用C语言编程:龙贝格-数值积分.doc
班级 信科 学号 姓名 成绩数值分析实验报告实验3 数值积分3.1 实验目的 通过本实验理解数值积分与微分的基本原理。掌握数值积分中常见的复合求积公式的编程实现。 掌握龙贝格算法的基本思路和迭代步骤; 培养编程与上机调试能力。3.2 算法描述3.2.1 龙贝格算法基本思路 先算出他T0(0),从而计算 T0(1)以此类推,在判断| Tn(0)- Tn-1(0)|e 即可利用加速递推公式算出结果 3.2.2 龙贝格算法计算步骤步骤1输入区间端点,精度控制值,循环次数,定义函数,取, 步骤2for to 步骤3数据积分近似值。利用Romberg方法计算函数 3.3 实验内容 用龙贝格算法计算3.4 实验步骤3.4.1 代码 includeiostream.hincludemath.hdefine e 0.00000000000001double fdouble xdouble y;if x0return y1.0;else ysinx/x;return y;void rombergdouble a,double bint n1,k0;double h,T2,S20,C20,R20,T1,C1,S1,R1;hb-a/2;T2h*fafb;while fabsR2-R1eR1R2;T1T2;S1S2;C1C2;double sum0;int i;fori1;in;isumsumfa2*i-1*h;T2T1/2sum*h;S24*T2-T1/3;C216*S2-S1/15;R264*C2-C1/63;nn*2;k;hh/2;cout*最后结果为IR2endl;void maindouble a,b;cout*输入上下限a,b的值用空格隔开*endl;cinab;cout*下限aaendl;cout*上限bbendl;cout*被积函数为ysinx/xendl;cout*结果如下*endl;romberga,b; 3.4.2 实验结果 3.5 实验体会 *