7-15 计算圆周率(15 分)

根据下面关系式,求圆周率的值,直到最后一项的值小于给定阈值。

​2​​π​​=1+​3​​1​​+​3×5​​2!​​+​3×5×7​​3!​​+⋯+​3×5×7×⋯×(2n+1)​​n!​​+⋯

输入格式:

输入在一行中给出小于1的阈值。

输出格式:

在一行中输出满足阈值条件的近似圆周率,输出到小数点后6位。

输入样例:

0.01

输出样例:

3.132157

完整代码如下:

亮点:采用分子分母同时求出来再分别相除计算的方法:double与lf同时用

#include<stdio.h>
int main()
{
    double i,j,k;
    double sum=1;
    double n;
    scanf("%lf",&n);
    i=1;j=1;
    double i1=1;
    double j1=1;
    while(i1/j1>=n)
    {
        if(j1==1)
          i1=1;
        else
          {
              i1=i1*(i+1);//1*2;  1*2*3;
              i=i+1;
          }
            //1*2;   1*2*3;
        j1=j1*(j+2);
        j=j+2;
        sum=sum+i1/j1;
        //printf("%f",sum);

    }
    printf("%.6lf",sum*2);
    return 0;


}
 

猜你喜欢

转载自blog.csdn.net/qq_40604313/article/details/81489046