计算圆周率
根据下面关系式,求圆周率的值,直到最后一项的值小于给定阈值。π/2=1+1/3+2!/3*5+.......+n!/3*5*.......*(2n+1)。输入在一行中给出小于1的阈值。在一行中输出满足阈值条件的近似圆周率,输出到小数点后6位。
#include<stdio.h>
int main()
{
double a;
scanf("%lf", &a);
double up = 1, down = 1;
double t = 1, ts = 0;
for (double i=1; t>=a; i++)
{
up *= i;
down *= (2 * i + 1);
t = (double)up / (double)down;
ts += t;
}
double z = 2 * (ts + 1);
printf("%.6lf", z);
return 0;
}