C语言的中的一道例题,看不懂

来源:百度知道 编辑:UC知道 时间:2024/05/08 18:21:20
例题 用 派/4=1-1/3+1/5-1/7....公式求派

#include<math.h>
main()
{
int s;
float n,t,pi;
t=1,pi=0;n=1.0,s=1;
while(fabs(t)>1e-6)
{pi=pi+t;
n=n+2;
s=-s;
t=s/n;
}
pi=pi*4;
printf("pi=%10.6f\n",pi);
}

while语句后面的表达式是什么意思,是|t|大于0的意思吗?
为什么这么设置大于0
对于循环体更是不懂,我能翻译过来
主要是不懂道理
兄弟初中文凭,希望各位大虾解释的时候尽量少用专业语言
最好能把算法告诉我,并解释下为什么
兄弟绝对不会吝啬分的
谢谢了
pi=pi+t;
n=n+2;
s=-s;
t=s/n;
这几句什么意思

就佩服您这初中文凭的,能自学不简单

该程序为使用公式π/4=1-1/3+1/5-1/7+……+(-1)^(n-1)/(2n-1),来计算π,精度为10-6次方
#include<math.h>
main()
{
int s;
float n,t,pi;
t=1,pi=0;n=1.0,s=1;
while(fabs(t)>1e-6) /*该程序为计算π/4的程序,fabs表示取绝对值
精度为10的-6次方*/
{pi=pi+t; /*每次增加一项*/
n=n+2; /*n是分母*/
s=-s; /*s表示正负*/
t=s/n; /*t表示每次要加的数*/
}
pi=pi*4;
printf("pi=%10.6f\n",pi);
}

while里面的意思是|t| 大于 10的-6次方,就是0.000001.
也就是说当t=s/n.的值小于0.000001的时候就不加了,也就是精确到0.000001.
pi=pi+t; 把每次算出来的值往上加
n=n+2; 分母每次加了2
s=-s; 每加一次变个正负号
t=s/n; 要加的值是分子s除以分母n