用牛頓迭代法求方程3 x x x 4x 2 5x 13 0在

時間 2021-08-30 09:08:44

1樓:

我出略算了一下,好像有一個最近的實根是-1.5489,在x=1附近有兩個函式一階導為0,一個是-0.4234,另一個是1.3122.

函式二階導在x=1大於0,所以x=1應當在下降段,而在x=1處函式值為正,且x=1.3122處函式也為正,所以右邊沒有實根,在左邊的實根為x=-1.5489。

所以不知道是你的題目錯了還是什麼問題。下面是我的源程式:(請批評指正)

x1=1;

absolution=1;

while absolution>10e-6y1=3*x1^3-4*x1^2-5*x1+13;

x3=x1;

y2=9*x1^2-8*x1-5;

x2=x1-y1/y2;

absolution=abs(x2-x1);

x1=x2;

endx=x3

2樓:匿名使用者

迭代公式x(k+1)=x(k)-f'(x(k))/f''(x(k))k=1,2.....,直到你要的精度

x(1)=1

當|x(k+1)-x(k)|<10^-6,時,迭代結束如果你要的是程式,就不應該在這提問

3樓:匿名使用者

初始設f(x)=3x^3-4x^2-5x+13;

求導:f'(x)=9x^2-8x-5;

估計根的範圍[a,b]

x0:=1;

m為f'(x)在[a,b]上的最小值迴圈:

用c++編寫程式 用牛頓迭代法求方程 3*x*x*x-4*x*x-5*x+13=0 在x=1附近的根,要求精度為10的-6次方 5

4樓:波波球

#include

#include

using namespace std;

static k=0;

static int count=1;

double f(double x)

int main()

cout<<"方程的專根為:"<屬次數為:"<

return 0;}

c++編寫程式用牛頓迭代法求一元方程5x^3—3x^2+2x—8=0 在x=1.1附近的根要求的精

5樓:

#include "iostream"

#include "math.h"

using namespace std;

typedef double (*func) (double);

double y(double x)

double dy(double x)

double newton(double x, func fy, func fdy)  while  (fabs(x-x0) > 1e-6);

return x0;

}int main()

6樓:匿名使用者

#include "stdafx.h"

#include "iostream"

#include "math.h"

using namespace std;

int _tmain(int argc, _tchar* argv){double x = 1.1;

while(fabs(5*x*x*x-3*x*x+2*x-8)>0.000001)

x = x - (5*x*x*x-3*x*x+2*x-8)/(15*x*x-6*x+2);

cout<<"方程的解為"<

急!!!!!哪位大哥會matlab 幫忙寫個程式,用牛頓迭代法求方程x^3-3*x-1=0在2附近的解

7樓:匿名使用者

^syms x

x0=2;

f=x^3-3*x-1;

eps=1e-6;

maxcnt=1000;

fx=diff(f,x);

x1=x0;

cnt=1;

while cnt<=maxcnt

x2=x1-subs(f/fx,x,x1);

if abs(x1-x2)數,迭代前,迭代後x1=x2;

cnt=cnt+1;

endsubs(f,x,x2)

8樓:06級王勇

#include

main()

while(fabs(f/fd)>1e-5);

printf("x=%.6f",x1);}

c語言程式設計,指標,編寫函式,用牛頓迭代法求方程f(x)=2x3-4x2+3x-6=0在1.5附近的根。請給出運算結果

9樓:金色潛鳥

#include

#include

double root(double (*f)(double),double (*f1)(double), double x,double eps);

double fx(double x)

double fp(double x)

int main()

double root(double (*f)(double x),double (*f1)(double x), double x,double eps);

return x1;

}執行與輸出:

input eps 1e-08

1e-08

2.000000

10樓:匿名使用者

2x³-4x²+3x-6=0

(2x³-4x²)+(3x-6)=0

2x²(x-2)+3(x-2)=0

(x-2)(2x²+3)=0

x1=2

2x²+3=0

2x²=-3

x²=-3/2

x=±√6i/2

用牛頓迭代法求方程x^3-3x-1=0在x0=2附近的根。 要求:給出程式和執行結果;計算結果保留4位有效數字

11樓:程國安罐罐

syms x

f=x^復3-3*x-1;

df=diff(f,x);

eps=1e-5;

x0=2;

cnt=0;

maxcnt=200; %最大迴圈次數制

while cnt止無限迴圈

x1=x0-subs(f,x,x0)/subs(df,x,x0); %去掉分號可以看到迭代過程.

if (abs(x1-x0)

break;

endx0=x1;

cnt=cnt+1;

endif cnt==maxcnt

disp '不收斂'

else

vpa(x1,8)end

用牛頓迭代法求方程的根 2 x x x 4 x x 3 x

用牛頓迭代法解方程 2x 3 4x 2 3x 6 0 f x0 2x 3 4x 2 3x 6 f x0 6x 2 8x 3 private sub form click dim x as single,x0 as single,f as single,f1 as single dim n as in...

用牛頓迭代法求方程,用牛頓迭代法求方程f x x 6 x 1 0在區間 1,2 內的實根,要求 f x k 10 8 用C語言編寫此程式設計

include include define eps 1e 8 void main printf 用newton切線法得 12.10lf n t 結果為 t0 1.2065843621,t 0.9809945654t0 0.9809945654,t 0.8207881793t0 0.82078817...

用MATLAB的迭代法求解x 3 x 1 0在x0 1 5附

牛頓迭代法 解方程y x.3 x 1 x 1.5 format long x1 x func1 1 x func1 1 1 x if abs x1 1.5 delt abs x1 x else delt abs x1 x x1 endwhile delt 1e 6 abs func1 1 x 1e ...