计算圆周率 (15 分)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_42623428/article/details/83064686

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

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

输入格式:

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

输出格式:

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

输入样例:

0.01

输出样例:

3.132157
#include <bits/stdc++.h>

using namespace std;

int main()
{
    double n;
    double sum=1;
    double x=1;
    cin>>n;
    int i=1,j=3;
    double a=1,b=1;
    while(x>=n)
    {
        a*=i;
        b*=j;
        x=a/b;
        i++;
        j+=2;
        sum+=x;
    }
    printf("%.6f",2.0*sum);
}

猜你喜欢

转载自blog.csdn.net/qq_42623428/article/details/83064686