newton迭代法求方程解.cpp

来自「数值计算各算法的程序,包括:牛顿迭代法,超松驰迭代法,微分法等.对于初学数值分析」· C++ 代码 · 共 24 行

CPP
24
字号
#include <iostream.h>
#include <math.h>
void main()
{
	float e=1.0e-7,err,x,x1,f,f1,a,b,c,d;
	cout<<"请输入一元三次多项式的系数:";
	cin>>a>>b>>c>>d;
	cout<<"方程为:"<<a<<"*x*x*x+("<<b<<")*x*x+("<<c<<")*x+("<<d<<")=0"<<endl;
	cout<<"请输入初值x:";
	cin>>x;
	do
	{
	x1=x;
	f=(a)*x*x*x+(b)*x*x+(c)*x+(d);
	f1=3*(a)*x*x+2*(b)*x+(c);
	x=x1-f/f1;
	err=fabs(x-x1);
	}
	while(err>e);
	cout<<"x="<<x<<endl;
}


	

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?