在C语言中用Π/4≈1-1/3+1/5-1/+.......公式求π的近似值,知道某一项的绝对值小于10-6次方为止

#include<stdio.h>
#include<math.h>
void 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);
}
谁能解释一下这个程序吗,本人怎么看不懂啊 ,求各位大神帮助一下 啊

第1个回答  推荐于2017-09-06
首先,while循环,条件是某一项,也就是t的绝对值小于10的-6次方,fabs是求绝对值的函数。
pi初始化为0,然后在循环里,就按照公式,首先先把t的第一次的值加上,也就是1,然后把t进行处理,用n来表示分母,s代表每项的符号,然后把t值改变为下一项,像第一次循环中,最后t就会变成1/3,然后把t会拿去判断,如果没在范围内,就继续这个步骤,pi加上t,然后继续把t进行处理,变成下一项,如此循环,等判断符合条件时,就会跳出,然后再把pi值乘以4就可以了。因为现在求出的pi相当于是原公式中的右边的部分,左边是除以了4的,最后乘回去就可以了。

整个过程就是模拟了一遍公式,很简单的。本回答被提问者和网友采纳
相似回答