其他分享
首页 > 其他分享> > 7-15 计算圆周率 (15 分)

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

作者:互联网

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

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

输入格式:

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

输出格式:

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

输入样例:

0.01

输出样例:

3.132157

 答:

#include<stdio.h>
int main()
{
    int i;
    double n,sum=1,fs,fz=1,fm=1;//分子分母可能超出长整型,用double
    scanf("%lf",&n);
    for(i=1;i>0;i++)
    {
        fz=fz*i;
        fm=fm*(2*i+1);
        fs=fz*1.0/fm;
        sum=sum+fs;
        if(fs<n)
        {
            sum=2*sum;//注意是π/2
            break;
        }
    }
    printf("%lf",sum);
    return 0;
}

标签:输出,fs,15,圆周率,fm,计算,sum,fz
来源: https://blog.csdn.net/QuanY2021/article/details/122770443