内容发布更新时间 : 2024/12/24 8:35:20星期一 下面是文章的全部内容请认真阅读。
for(j=0,i=101;i>=0;i--)//计算n/(2n+1)的高精度值 { a[i]=a[i]*b+j;//数组模拟手工乘法,每个数组乘以n j=a[i]/10;//如果満十则对前面数组进1 a[i]=a[i];//而该数组取个位 } a[0]=a[0]+1;//计算1+n/(2n+1)的高精度值 x=a[0]; } for(j=0,i=101;i>=0;i--) { a[i]=a[i]*2+j;j=a[i]/10;a[i]=a[i];//因为公式左边还有个1/2,对结果整体乘以二,模拟手工乘法 } printf(\用级数方法求得π=%d.\控制格式并输出结果 for(e=0,i=1;i<=100;i++) { printf(\ e++; if(e0==0) printf(\ } printf(\ 13
三、详细设计(2) 程序运行结果测试与分析 主要功能模块 的算法设计 由输出结果可以看出,随机数法求得圆周率浮动较大,也许是N值设为5000还过于小造成结果误差大,然后把N值设为50000后继续测试如下 14
当N值为50000时,测试结果较为接近圆周率且比较数值浮动较小,其余小问测试结果基本接近真实圆周率的值,基本完成程序设计目标。 +15
三、详细设计(2) 主要功能模块 源程序 16