- 题目地址
- 题目分析:此处唯一需要注意的是都用double,不然精度无法满足。
- 我的代码:
#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;
}