题目链接:
#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;
float f(int a)//阶乘函数
{
int n=1;
for (int i=1;i<a;i++)
n=n*i;
return n;
}
float m(int a)//分母函数
{
int n=1;
for (int i=1;i<=a;i++)
n=n*(2*(i-1)+1);
return n;
}
int main()
{
float pi=0,c=5,d;
int n=1;
cin>>d;
while (c>d)
{
c=f(n)/m(n);
pi=pi+c;
n++;
}
cout<<fixed<<setprecision(6)<<2*pi;
return 0;
}
本文介绍了一种通过迭代计算π值的方法。该方法利用了阶乘和特定序列的分母来逐步逼近π的值,并通过一个简单的C++程序实现了算法。程序中包括了两个辅助函数用于计算每一步的分子和分母,最终输出结果保留六位小数。
2318

被折叠的 条评论
为什么被折叠?



