根据下面关系式,求圆周率的值,直到最后一项的值小于给定阈值。
输入在一行中给出小于1的阈值。
在一行中输出满足阈值条件的近似圆周率,输出到小数点后6位。
0.01
3.132157
#include<stdio.h>
int main(){
int n = 0;
double e,f; //e:阈值 f:单独一项的值
double fz=1,fm=1; //初始化分子分母的值为一
double sum=0,pi; //sum:各项总和 pi:最终结果
scanf("%lf",&e);
for(f=1;f>=e;n++)
{
if(n==0) //单独讨论第一项
{
fz=1;
}
else
fz=fz*n;
fm=fm*(2*n+1);
f=fz/fm;
sum=sum+f;
}
pi=2*sum;
printf("%.6lf\n",pi);
return 0;
}
原文:https://www.cnblogs.com/tqqnb/p/13693872.html