C语言题目 求π的近似值 急!!!!!!!!!!!!!!

求π的近似值:
用while和do while两种方式!!!
先求出前2n项的π值,再求出2n+2项的π值,直至二者之差小于10-5为止。

你好,你看看这样写行不,望采纳:
#include <stdio.h>
int main(void)
{
double n=1.0,pi1=0.0,pi=1.0;
do
{
pi1=pi;
pi=pi*((2.0*n)/(2.0*n-1.0))*((2.0*n)/(2.0*n+1.0));
n++;
}while(2.0*(pi-pi1)>1e-5);
printf("%lf\n",2*pi);
return 0;
}追问

还有一个while的 可以再做一下吗 ><!!!

追答

这种是出口循环,所以我优先考虑do循环的,你想改当然可以,把循环改改,其他不要变:

while(2.0*(pi-pi1)>=1e-5)//上边的do也改">="把,因为题目要求是"<"时退出
{
pi1=pi;
pi=pi*((2.0*n)/(2.0*n-1.0))*((2.0*n)/(2.0*n+1.0));
n++;
}

反正初始值我们定义得pi和pi1不相等,所以挪一下位置就行

温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网