700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 用c语言求积分程序 菜鸟学C语言(五)之求定积分

用c语言求积分程序 菜鸟学C语言(五)之求定积分

时间:2022-05-12 14:28:03

相关推荐

用c语言求积分程序 菜鸟学C语言(五)之求定积分

求定积分近似值试求定积分

的近似值(积分限a,b从键盘输入)。

算法分析如下:

求定积分的近似值常有矩形法与梯形法,其实质都是面积求和。

矩形法是把所要求的面积垂直x轴分成n个小矩形,然后把这n个小矩形的面积相加,即为所求的定积分的值。 梯形法是把所要求的面积垂直分成n个小梯形,然后作面积求和。 这两种近似求值的精度随分割个数n的增加而增加,对于相同的n个数,相对来说,梯形法的精度比矩形法的要高一些。 程序代码如下: #include #include void main() { int i,n=1000; float a,b,h,t1,t2,s1,s2,x; printf("请输入积分限a,b:"); scanf("%f,%f",&a,&b); h=(b-a)/n; for(s1=0,s2=0,i=1;i<=n;i++) { x=a+(i-1)*h; t1=(float)exp(-x*x/2);t2(float)=exp(-(x+h)*(x+h)/2); s1=s1+t1*h; /*矩形面积累加*/ s2=s2+(t1+t2)*h/2; /*梯形面积累加*/ } printf("矩形法算得积分值:%f.\n",s1); printf("梯形法算得积分值:%f.\n",s2); } 程序运行结果如下: 矩形法算得积分值:0.855821 梯形法算得积分值:0.855624 由上面的比较可知,梯形法的精度要高于矩形法。

例二 求函数f(x)=x*x+2*x+1在【0,2】上的定积分。

#include main() { double s=0,h,a,b,f0,f1,n; int i; printf("Enter n,a,b:"); scanf("%lf,%lf,%lf",&n,&a,&b); h=(b-a)/n; f0=a*a+2*a+1; for(i=1;i<=n;i++) { a=a+h; f1=a*a+2*a+1; s+=(f0+f1)*h/2; f0=f1; } printf("sum is %f",s); }

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。