根据下面关系式,求圆周率的值,直到最后一项的值小于给定阈值。
2π=1+31+3×52!+3×5×73!+⋯+3×5×7×⋯×(2n+1)n!+⋯
输入格式:
输入在一行中给出小于1的阈值。
输出格式:
在一行中输出满足阈值条件的近似圆周率,输出到小数点后6位。
#include <stdio.h>
int main(int argc, const char *argv[])
{
double res,check,sum;
int i;
if ( scanf("%lf", &check)==EOF ) printf("error\n");
res=1, sum=1, i=1;
while ( res>=check ) {
res *= (i*1.0)/(2*i+1);
sum += res;
++i;
}
printf("%f", sum*2);
return 0;
}