求积公式程序

上传人:鲁** 文档编号:500865021 上传时间:2023-02-11 格式:DOCX 页数:5 大小:36.40KB
返回 下载 相关 举报
求积公式程序_第1页
第1页 / 共5页
求积公式程序_第2页
第2页 / 共5页
求积公式程序_第3页
第3页 / 共5页
求积公式程序_第4页
第4页 / 共5页
求积公式程序_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《求积公式程序》由会员分享,可在线阅读,更多相关《求积公式程序(5页珍藏版)》请在金锄头文库上搜索。

1、程序、 用复化梯形求积公式的程序/*复化梯形求积法*/#include void main()/*f(x)为函数举例,即被积函数*/double f(double x);int i,n; float a,b,h; double T,Tn;/*n为区间等分的个数,应尽可能大*/*a为积分下限,b为积分上限,h为步长*/ printf(积分下限和上限a&b:n); scanf(%lf %1f,&a ,&b); printf(区间等分数n :n); scanf(%d,&n); h=(b-a)/n; T=(f(a)+f(b)/2; for(i=1;in;i+) T=T+f(a+i*h); Tn=T*h

2、;/*n 尽可能大*/*步长的计算*/*中间变量T赋初值*/*用循环控制来完成复合梯形公式的运算*/printf(函数 f(x)的积分值为 Tn=%1.8fn,Tn); /*以下为被积函数的定义,即函数举例*/double f(double x)return (4/(1+x*x);二、 用自适应复化梯形求积公式的程序/*自适应复化梯形求积*/#define u 1e-7#include#includedouble f(double x);/*f(x) 为被积函数*/void main ()float a,b,h;/*a 为积分下限, b 为积分上限, h 为步长*/double T1,T=0.

3、0,T2;/*T,T1 为中间变量,T2 为积分值*/int n=1,k;printf(输入积分下限和上限a & b:n);scanf(%f %f,&a,&b); h=b-a;T2=h/2*(f(a)+f(b);doT1=T2;for(k=1,T=0.0;k=u);/*用于判断 T2 是否满足精度要求*/printf (”函数 f(x)的积分值 T2=%1.8fn,T2);/*被积函数f(x)的定义*/ double f(double x)return (4/(1+x*x)执行结果一、复化梯形求积的执行结果、自适应复化梯形求积公式的执行结果u*irDebug自砲输X积莽下限和上限& 1函数fa

4、的积分值12=3.14157264ress any key to continue结果分析及总结利用复化梯形公式求得函数f(x)二卩丄dx的积分值为0 1 + X23.14159260,利用自适应复化梯形公式求得积分值为 3.14159264。 而该积分的精确值为n 3.14159 26535。由此可见利用自适应复 化梯形公式求积更精确。在运用复化梯形求积公式计算时,要求预先给定n和步长h,这在计算中难以把握。因为步长取得太大时精度难以保证,步长太小会增加 计算的工作量。而自适应复化梯形求积法就是在步长逐次分半的过程 中,反复利用复化梯形求积公式进行计算,直到所求得的积分值满足 精度要求为止。

5、当然,此时的步长就是既能保证精度要求又使计算工 作量最小的最恰当的步长。显然自适应复化梯形求积法更好。算法描述一、 复化梯形公式的算法St epl :输入积分区间的端点值a和b ;Step2 :输入区间的等分个数n (要求n尽可能大,以保证程 序运行结果有较高的精确度) ;Step3 :计算步长 h = (b - a)/ n ;Step4 :对累加和赋初值t = (f -f )/2 ;Step5 :计算累加和T = Yn -1 f (x )ii=1Step6:算出积分值t = Txh;Step7 :输出积分近似值t。n自适应复化梯形公式的算法Stepl :令 n=l , h=b-a,仙2 : T= Y 竺-1),k=1k- 2T1 = 2 f (a) + f (b);T2=1T1 + hT ;2 2Step3:判断|T2-T1| ?若是,则转到Step5 ;Step4 :令 n=2n, h= -, T1=T2 ;2Step5 :输出积分近似值T2

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号