毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 课程设计 >> 正文

VC++计算圆周率π源代码+经验体会

更新时间:2014-11-18:  来源:毕业论文

需求分析
利用如下公式编程计算π的值,来满足计算的要求。
π/4 = 1 - 1/3 + 1/5 -1/7 + 1/9 …
对于精度的要求(1)计算200项得到的近似π;
           (2)要求误差小于0.000001的π的近似值。
概要设计
对于上面的公式,需要判断它前面的符号,需要确定分母的大小增长,还要设计一个整型变量一个用于计数,设计另一个浮点型变量用于存储最后的运算结果。
在第二个精度要求中,除了上面中的变量之外,还要设置一个变量,用于存储上一次运算出来的π/4的结果,用于和这次的比较,从而判断是否满足题目的精度要求。
调试分析
在第一个程序的设计中,比较顺利,程序顺利的执行。但是在第二个程序的设计中,一个小问题费了好大的力气才调试出来。问题就出在fabs()和abs()中,一个小疏忽导致了程序调试了将近2个小时。fabs()是求浮点数的绝对值,abs()是求整数的绝对值。
详细设计和编码中国电信营销策略文献综述
对于上述公式,经过抽象分析得到以下规律:当它的顺序是奇数时,它前面的符号就是正数;当它的顺序是偶数时,它前面的符号就是负数。在解决这个问题上,我设置了一个int型变量n,它有两个作用,一来它可以用来设置计算的次数;二来用n%2来判断它的位置,是奇数还是偶数,从而确定符号是正数还是负数。程序中,还有一个float型的变量,它储存最好的结果即π/4,它的值每次循环的时候都是变化的。
在精度的第二个要求中,设计的思想基本与第一个是一样的,唯一的区别就是:需要判断本次运算的π值与上次运算的π值的差是否满足要求。我在程序中设置了一个临时变量temp来储存上次运算出来的sum的结果,用于和这次的sum进行比较,从而判断是否满足了要求,结束循环。我觉得在循环的设计上,我的设计还是比较巧妙的,在结束的时候将n值设为-1,下面的n++正好将n值变为0,符合while()的结束条件,退出循环。

本文来自优.文,论-文·网原文请找腾讯752018766
//---------计算200项后得到的Pi的值----------//
#include<iostream>
#include<iomanip>
using namespace std;

int main()
{
 int n;
 float sum=0;
 for(n=1;n<=200;n++)
 {
  float a=2*n-1;
  if(n%2!=0)          //奇偶的校验,从而执行不同的算式
   sum=sum+1/a;2716

[1] [2] 下一页

VC++计算圆周率π源代码+经验体会下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。