输出π的前781位的C++程序

来源:百度知道 编辑:UC知道 时间:2024/07/07 06:09:04
#include <iostream>
using namespace std;
long a=10000,b=0,c=2800,d,e=0,f[2801],g;
void main()
{
for(;b-c;)f[b++]=a/5;
for(;d=0,g=c*2;c-=14,cout<<e+d/a,e=d%a)
for(b=c;d+=f[b]*a,f[b]=d%--g,d/=g--,--b;d*=b);
}
这个程序看不明白
谁能帮我解释下啊?

据我猜测。。。一定是用了某些数学的算法~~~ -_-T
而且这个人写程序就不打算让人看懂。。。
其实如果你搞清楚了这个算法(就是他通过什么方法来求PI的值的),然后再把for循环的执行(第一个表达式是初始化,第二个表达式是循环之前的判断(每次循环都会运行一次,但执行了这个并不一定会执行循环体里面的内容),第三个表达式是每次循环后进行更新操作。
那么你也就能理解这个程序了。。。。。
抱歉说了那么多废话。。。