📄
字号:
非线性方程求根的不动点迭代法2007-07-16 18:51#include<iostream>
using namespace std;
#define g(x) ((x)*(x)+2*(x)+10) //要首先把f(x)=0化成x=g(x)的形式,此处不拟提供自动转化函数
#define n 50 //最大迭代次数
#include<math.h>
#define err 0.00001 //最大允许误差
void main()
{
double x[n];
int i;
cout<<"Please input the initialized x0:\n";
cin>>x[0];
for(i=0;i<n;i++)
{
x[i+1]=20/g(x[i]); //预先已经求得的迭代格式
if(fabs(x[i+1]-x[i])<err) {cout<<"The root of the equation is:\n"<<x[i+1]<<"\n";break;}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -