用牛顿迭代法求下面方程在1.5附近的根.2x^3-4x^2+3x-6=0

问题描述:

用牛顿迭代法求下面方程在1.5附近的根.2x^3-4x^2+3x-6=0

#define error 1e-6 /*误差*/
#include
main()
{
float x=1.5,df,f,d;
for(;d {
f=2*x*x*x-4*x*x+3*x-6;
df=6*x*x-8*x+3;
d=f/df; /* 增量*/
x=x-d;
}
printf("The root of this equation is %f",x);
getchar();/*wintc下用于保留结果界面*/
}

有唯一实数根2

f(x)=2x^3-4x^2+3x-6
f'(x)=6x^2-8x+3
x(n+1)=xn-(2xn^3-4xn^2+3xn-6)/(6xn^2-8xn+3)
x1=1.5
x2=2.3333
x3=2.0610
x4=2.0026
x5=2.0000
x6=2.0000
所以x=2