用牛顿迭代法求方程的根

用牛顿迭代法求方程的根

题目

用牛顿迭代法求方程2x3 - 4x2+3x-6=0在1.5附近的一个实根,
提示:牛顿迭代公式:x=x0-f(x)/f '(x);
设迭代 |x-x0|<= 10-5 结束

代码

 fun5(){     
 	double x,x1,f,f1;     
 	x1=1.5;     
 	do     {        
 		 x=x1;         
 		 f=2*x*x*x-4*x*x+3*x-6;   
 		 //  f=2*pow(x,3)-4*pow(x,2)+3*x-6;      
 		 //  这里可以使用pow(double,double)函数
 		 f1=6*x*x-8*x+3;   
 		 // f1=6*pow(x,2)-8*x+3;
 		 x1=x-f/f1;    
 	 } while (fabs(x-x1)<=10e-5);        
 	 printf("%5.2f",x1);
  }

总结:
通过这道题,要知道绝对值函数fabs(),幂函数pow (double, double);的使用,还有确保科学计数法的正确表示。 这些小的知识点积攒起来,不然考试的时候忘记了,难受。

你可能感兴趣的:(C语言,C语言,牛顿迭代)