📄 牛顿迭代法.cpp
字号:
# include <iostream.h>
# include <math.h>
double f (double x)
{
double x1=exp(x)*x-1;
return x1;
}
double f1 (double x1)
{
double n=exp(x1)+x1*exp(x1);
return n;
}
void main ()
{
double x0,e,x1;
int N,k=0,i=1;
cout<<"请输入初值,误差限,迭代次数:\n";
cin>>x0>>e>>N;
while (i)
{
if (f1(x0)==0)
{
i=2;
break;
}
else
{
x1=x0-f(x0)/f1(x0);
if ((x0-x1)<e && (x1-x0)<e)
{
i=0;
break;
}
else if (k==N)
break;
else
{
cout<<x1<<" "<<x0<<endl;
k++;
x0=x1;
}
}
}
if (i==0)
cout<<"方程的解为:\n"<<x1<<endl;
if (i==1)
cout<<"迭代失败!\n";
if(i==2)
cout<<"此方程不能用此种迭代法方法!\n";
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -