#include<stdio.h>
int main()
{
int i = 1;
double up=1.0f;
double down=1.0f;
double sum=1.0f;//右边式子第一项为1,在此直接处理
double n;
scanf("%lf",&n);//输入阈值
do{
up*=i;//分子
down*=(2.0*i+1.0);//分母(奇数相乘,从1*3开始)
i++;
sum+=(up/down);//每一项的和累加
}while(up/down>=n);//如果当前项小于阈值,退出循环
printf("%.6lf",2.0*sum);//最后不要忘记乘以2
return 0;
}
别人的
int main(){
int n,m,x,i;
double k;
m=1;
k=1;
scanf("%d",&x);
for(i=1;i<=n;i++){
m=i/(2*i+1);
m*=m;
}
k+=m;
printf("%.6f",2*k);
return 0;
}
自己的,对,我又错了,去订正了