2016 - 2024

感恩一路有你

c语言用for语句求1到100的积 用c语言算法怎么写1*2*3*4*5的积,谢谢?

浏览量:3085 时间:2023-07-08 07:47:24 作者:采采

用c语言算法怎么写1*2*3*4*5的积,谢谢?

写c语言的程序最好养成习惯,建个工程,然后建程序。#includ

c语言编程龙贝格积分算法?

这个程序,我正好在学计算方法的时候写过,直接贴代码

C 实现如下:

#includeltiostreamgt

#includeltcmathgt

using namespace std

const int MAXRepeat 100 //最大允许重复

double function(double x)//被积函数,根据自己的需要手工输入

{

double s

s 1.0 / (1 x)

return s

}

void Romberg(double a, double b, double epsion, double f(double x))

{

int m 1

int n 1

int k

double h

double ep

double p

double xk

double s

double q

double T[MAXRepeat]

h b - a

T[0] 0.5 * h * (f(a) f(b))

ep epsion 1.0

while ((ep gt epsion) ampamp (m lt MAXRepeat))

{

p 0.0

for (k 0 k lt n k )

{

xk a (k 0.5) * h // n-1

p p f(xk) //计算∑f(xk h/2),T

} // k0

p (T[0] h * p) / 2.0 //T`m`(h/2),变步长梯形求积公式

s 1.0

for (k 1 k lt m k )

{

s 4.0 * s //[pow(4,m)T`m`(h/2)-T`m`(h)]/[pow(4,m)-1],2m阶牛顿柯斯特公式,即龙贝格公式

q (s * p - T[k - 1]) / (s - 1.0)

T[k-1] p

p q

}

ep fabs(q - T[m - 1])

m

T[m - 1] q

n // 2 4 8 16

h / 2.0

}

for (int i 0 i lt m i )

{

int j

if (!(i % j))

{

coutltltT[i]llt tendl } else { coultlt[I]ltlt

程序 算法

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。