1 //编写一个C++程序求PI的值 2 /* 3 PI=16arctan(1/5)-4arctan(1/239) 4 其中arctan用如下形式的极数计算: 5 arctan=x-(x^3/3)+(x^5/7)-(x^7/7)+... 6 */ 7 #include<iostream> 8 using namespace std; 9 double arctan(double x){ 10 double sqr = x*x; 11 double e = x; 12 double r = 0; 13 int i = 1; 14 while(e/i>1e-16){ 15 double f = e/i; 16 r = (i%4==1)?r+f:r-f; 17 e = e*sqr; 18 i+=2; 19 } 20 return r; 21 } 22 int main() 23 { 24 double a = 16.0*arctan(1/5.0); 25 double b = 4.0*arctan(1/239.0); 26 cout<<"PI="<<a-b<<endl; 27 system("pause"); 28 return 0; 29 }