有如下表达式 s = 1 + 1 / 3 + (1 * 2) / (3 * 5) + (1 * 2 * 3) / (3 * 5 * 7) + .... + (1 * 2 * 3 * .... * n) / (3 * 5 * 7 * ... * (2 * n + 1))
。编写函数求给出的n所对应的表达式s的值。
输出表达式的值,保留小数点后10位的值。
示例 | 输入 | 输出 |
---|---|---|
1️⃣ | 4 | 1.5492063492 |
2️⃣ | 3 | 1.5238095238 |
C语言代码如下
#include<stdio.h>
int n;
double s;
int sum()
{
double s=1,t=1;
for(int i=1;i<=n;i++)
{
t=t*i/(2*i+1);
s+=t;
}
printf("%.10lf\n",s);
return 0;
}
int main()
{
scanf_s("%d",&n);
sum();
return 0;
}