根據下面關係式,求圓周率的值,直到最後一項的值小於給定閾值。
輸入格式:
輸入在一行中給出小於1的閾值。
輸出格式:
在一行中輸出滿足閾值條件的近似圓周率,輸出到小數點後6位。
輸入樣例:
0.01
輸出樣例:
3.132157
#include <stdio.h>
int main(void) {
double sum = 1, item = 1, fact = 1, denominator = 1;
double eps;
int i = 1;
scanf("%lf", &eps);
while(item >= eps) {
fact *= i;
denominator *= (2 * i + 1);
item = fact / denominator;
sum += item;
++i;
}
printf("%.6f\n", 2 * sum);
return 0;
}