求C语言大神帮写个用for循环求π值的程序

c程序设计第四版第五章的例题5.7,作业让用for循环做,题目给出的公式是π/4=1-1/3+1/5-1/7+……

#include <stdio.h>

double getPi(int precision)
{
int i;
double res = 1;
for(i = 1; i <= precision; i++)
{
if(i % 2 != 0)
res = res - (double)1 / (2 * i + 1);
else
res = res + (double)1 / (2 * i + 1);
}
return res;
}

void main()
{
int precision;
double result;
scanf("%d", &precision);
result = 4 * getPi(precision);
printf("%f\n", result);
// 我用的是VS2008,以下部分为了方便看结果
getchar(); 
getchar();
}

温馨提示:内容为网友见解,仅供参考
无其他回答

如何用C语言计算π?
for i in range(1, 201, 2):pi += sign * (1 \/ i)sign *= -1 pi *= 4 print("π的值为:", pi)解释:首先定义变量pi和sign,分别表示π的值和正负号。然后使用for循环计算公式的前100项,每次加上一个数(或减去一个数),并更新正负号。最后将计算结果乘以4,即可得到π的值。...

C语言 for循环问题求π的近似值。通过π\/4= 1-1\/3+1\/5-1\/7+……直到...
} double pi=4*sum;printf("%10.8f\\n",pi);return 0;}

c语言 用for语句π值求?
pi=pi+(double)s\/i;

C语言 求π
printf("%lf\\n",s*4);} 1*4=4 在执行的话s=1不满足s<0.0000001 ,跳出循环

C语言循环习题:公式求π值
include<stdio.h>int main(){double Pi=0.0; int n,i; scanf("%d",&n); for(int i=1;i<=4*n-1;i+=2) {if(i%4==1)Pi+=1.0\/i; else Pi-=1.0\/i; } Pi*=4; printf("%.2lf\\n",Pi); return 0;}

c语言 计算π的值
π\/4 = 1-1\/3+1\/5-1\/7……要是这样的话,就我下面的代码 include <stdio.h> include <math.h> main(){ int i,j=1;float pi=0;for(i=1;1.0\/i>=1e-6;i+=2){ pi+=j*1.0\/i;j*=-1;} printf("PI的近似值为%d",4*pi);} 看我的代码,有什么感想?

c语言问题,运用以下公式,用循环累加求和的方法计算π的值
<math.h> #define n 20190128\/\/#define n 20151123int main(){ int i; double sum, pi; sum = 0; for (i = 1; i <= n; i++) sum += 1.0 \/ i \/ i; pi = sqrt(6.0 * sum); printf("%.6f", pi); return 0;} ...

C语言编程应用题,求π
n=1; k=2*n\/(2*n-1)*2*n\/(2*n+1); for(n=1;n<=55000;n++) { k=2*n\/(2*n-1)*2*n\/(2*n+1); l*=k; pi=l;} printf("%lf",pi);} 问题出在这,公式只在循环外执行了一次,里面没有执行 k=2*n\/(2*n-1)*2*n\/(2*n+1);...

那个计算π的C语言程序是怎么写的啊?
编写循环程序,当这种计算方法所得到的偏差小于0.000001时停止计算,并输出PI的值及所需要计算的项数。2、例程:double s = 0;\/\/面积 double pi = 0;\/\/圆周率 double d=200;\/\/直径(值越大圆周率越精确) double r = d\/2;\/\/半径 for(int i=1;i<=d;i++){ for(int j=...

c语言,求π,精确到小数点10位
include<stdio.h> float calPI(){float p=0.0,t=1.0;int i;for(i=1;t>=1e-10;i+=2){ t=1.0\/i;if(i%4==1)p+=t;else p-=t;} return 4*p;} int main(){ float pi;pi = calPI();printf("π=%f\\n",pi);getch();} ...

相似回答