首页 > 其他 > 详细

求π的近似值

时间:2014-12-03 18:47:06      阅读:196      评论:0      收藏:0      [点我收藏+]

利用循環語句計算π的近似值!

公式:π/4≈1-1/3+1/5-1/7......    直到發現某一項小於10-6

while的寫法(兩種)

一、

 1 #include<stdio.h>
 2 int main()
 3 {
 4     int m=1,n=1;                //m為項數,n為分母
 5     double t=1.0/1,s=0;      //t為每一項的值,s為計算結果
 6     while(t>=1e-6)
 7     {
 8         if(m%2==1)         //項數為奇數時加
 9         {
10             s=s+t;
11         }
12         else                    //項數為偶數時減
13         {
14             s=s-t;
15         }
16         n=n+2;               //分母值
17         t=1.0/n;              //計算新一項的值
18         m++;                  //項數加一
19     }
20     printf("%lf\n",s*4);
21     return 0;
22 }

二、

 1 #include<stdio.h>
 2 int main()
 3 {
 4     int n=1,m=1;              //n為分母,m為正負號的標記,第一項為正
 5     double t=1.0,s=0;
 6     while(t>=1e-6)
 7     {
 8         s=s+t*m;          //一項的值乘以正負標記
 9         n=n+2;
10         t=1.0/n;
11         m=-m;              //改變符號
12     }
13     printf("%lf\n",s*4);
14     return 0;
15 }

還可以用for語句寫

 1 #include<stdio.h>
 2 int main()
 3 {
 4     int n,m=1;
 5     double s=0;
 6     for(n=1;n<=1E6;n=n+2)       //某一項小於10^-6說明分母大於10^6
 7     {
 8         s=s+(1.0/n)*m;
 9         m=-m;
10     }
11     printf("%lf\n",s*4);
12     return 0;
13 }

 

求π的近似值

原文:http://www.cnblogs.com/houraisan-kaguya/p/4140739.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!