1. 程式人生 > >c語言 用牛頓迭代法求方程在1 5附近的根 2x 3-4x 2+3x-6 0

c語言 用牛頓迭代法求方程在1 5附近的根 2x 3-4x 2+3x-6 0

               

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

解:牛頓迭代法又叫牛頓切線法。f =2x^3-4x^2+3x-6,f1為方程的導數,則f1 = 6x^2 - 8x+3,且f1=(f(x0)-0)/(x0-x1),推導得:x1 = x0 - f / f1

程式:

#include<stdio.h>

#include<math.h>

int main()

{

 double x0,x1,f,f1;

 x1 = 1.5;

 do

 {

  x0 = x1;

  f = 2*x0*x0*x0 - 4 * x0*x0 + 3 * x0 - 6;

  f1 = 6 * x0*x0 - 8 * x0 + 3;

  x1 = x0 - f / f1;

 } while (fabs(x0 - x1) >= 1e-5);

 

printf("The root of equation is %5.2f\n",x1);//The root of equation is表示方程的根

 return 0;

}

結果:

The root of equation is  2.00

請按任意鍵繼續. . .


本文出自 “巖梟” 部落格,請務必保留此出處http://yaoyaolx.blog.51cto.com/10732111/1742876

           

再分享一下我老師大神的人工智慧教程吧。零基礎!通俗易懂!風趣幽默!還帶黃段子!希望你也加入到我們人工智慧的隊伍中來!

https://blog.csdn.net/jiangjunshow