當前位置:編程學習大全網 - 編程軟體 - 二分法的程序實現

二分法的程序實現

先設置二分法的fun.m文件,代碼如下:

函數fun(a,b,e)

%f是自定義函數。

%a是根區間的左端點,b是根區間的右端點,e是絕對誤差限。

如果nargin==2

e = 1.0e-6;

elseif nargin & lt2

輸入('變量輸入錯誤!');

返回;

結束

如果a & gt=b

輸入(“根區間中的輸入不正確!”);

返回;

結束

a 1 = a;

b 1 = b;

c 1 =(a 1+b 1)/2;

n = 0;%叠代計數器,初始值為0。

while(b-a)/(2^(n))& gt;= 1/2*e

c1

如果f(c1)==0

c1

elseif f(a1)*f(c1)>0

a 1 = c 1;

c 1 =(a 1+b 1)/2;

n = n+1;

elseif f(b1)*f(c1)>0

b 1 = c 1;

c 1 =(a 1+b 1)/2;

n = n+1;

結束

結束

n

然後建立所需功能的f.m文件:

函數y=f(x)

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

Run: fun (-100,100,10 (-4))

-100 100是根所在的區間,10 (-4)表示精度要求。

結果:c1 =

c1 =

50

c1 =

25

c1 =

25/2

c1 =

25/4

c1 =

25/8

c1 =

25/16

c1 =

75/32

c1 =

125/64

c1 =

225/128

c1 =

475/256

c1 =

975/512

c1 =

1925/1024

c1 =

988/529

c1 =

2494/1331

c1 =

640/341

c1 =

1189/633

c1 =

171/91

c1 =

1357/722

c1 =

109/58

c1 =

1013/539

c1 =

701/373

n =

22

最終結果是701/373。

歡迎指出錯誤的方法。

另外站長群上有團購產品,便宜又有保障。

  • 上一篇:PLC編程的工作原理
  • 下一篇:谷圈裏的cpp是什麽意思
  • copyright 2024編程學習大全網