流操纵算子 setprecision
或函数 precision
这是一份关于π的任意精度计算的C++实现源代码.算法是基于二次收敛算法,即AGM(几何平均数)方法,该算法也可应用于计算椭圆积分和以先进的ADI算法实现椭圆偏微分方程.
(速度可能优于Mathematica!!!)
用线性表实现 pi 的任意精度求解(内存域内)
先来看一下 pi 的普通求解方法,即根据下面的公式进行求解:
pi/2 = 1+1/3+1/3*2/5 + 1/3*2/5*3/7 + 1/3*2/5*3/7*4/9+...... ,进而得出
pi=2*(1+1/3+1/3*2/5 + 1/3*2/5*3/7 + 1/3*2/5*3/7*4/9+...... )
实现代码如下:
#include<iostream>
using namespace std;
// pi的计算公式: pi/2
double pi = 3.14159265;
cout << pi << endl; // 默认以6精度,所以输出为 3.14159
1. 3.14
2. 3.14159265358979323846
3. 3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
4. 3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679...
5. 3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679...
6. 3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679...
7. 3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679...
8. 3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679...
9. 3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679...
10. 3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679...