7-15 计算圆周率 (15 分)
2021-02-15 本文已影响0人
我不是匠人
注意
- 输入值是浮点数
- 判断最小一项是否小于等于输入值
- 直接计算会超出长整形
- 保留6位小数
- 输入时double类型需要用lf来读入
代码
#include <iostream>
#include <cstdio>
using namespace std;
int main(){
double x;
scanf("%lf", &x);
double sum = 1;
int t = 1;
double last = 1;
while(last >= x){
last = last*t/(2*t+1);
sum += last;
t++;
}
printf("%.6f\n", sum*2);
return 0;
}