关于级数逼近的算法问题

来源:百度知道 编辑:UC知道 时间:2024/06/08 23:56:38
---------
---------
题目
---------
pi/4 ≈ 1 - (1/3) + (1/5) - (1/7)+ …

求pi的近似值,精确到小数点后6位.

#include<iostream>
#include<iomanip>
#include<cmath>

using namespace std;

int main(){
double sum=0, item=1;
for(int n=1; abs(item)>1e-6; ++n){ //注释
item *=(-1.0)*(2*n-3)/(2*n-1); //注释

sum+=item;
}
cout<<sum*4<<endl;
}

注释部分为什么要这么表达?怎么理解?

百度知道 > 电脑/网络 > C/C++
添加到搜藏
待解决
关于级数逼近的算法问题
悬赏分:20 - 离问题结束还有 14 天 11 小时
---------
---------
题目
---------
pi/4 ≈ 1 - (1/3) + (1/5) - (1/7)+ …

求pi的近似值,精确到小数点后6位.

#include<iostream>
#include<iomanip>
#include<cmath>

using namespace std;

int main(){
double sum=0, item=1;
for(int n=1; abs(item)>1e-6; ++n){ //An-A(n-1)足够小,结束
item *=(-1.0)*(2*n-3)/(2*n-1); //计算An-A(n-1)

sum+=item;
}
cout<<sum*4<<endl;
}

注释一 控制级数精度

注释二 计算级数的每一项