二分法與黃金分割法的比較_第1頁
二分法與黃金分割法的比較_第2頁
二分法與黃金分割法的比較_第3頁
二分法與黃金分割法的比較_第4頁
二分法與黃金分割法的比較_第5頁
已閱讀5頁,還剩5頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、題目:計算函數(shù)上1- =2的值并畫出圖像并分析各種算法的效率 (x+1)5二分法及黃金分割法計算函數(shù)的程序二分法程序:import j ava math.*;import java util.Scanner;public class Valuel(public static void main(String args)int count=0 ;double yl = Oz y2=0,y3=0,y4=0 ;double xl=0.1 ;double x2=l ;Double x3= (x2-xl) *0.5+xl ;/ 二分中點double jd=l ;/精度F a=new F() ;/初始化函

2、數(shù)yl=a Zhi(xl);y2=a Zhi (x2);y3=a Zhi (x3);System.out .printin Cy 請輸入精度 );Scanner s=new Scanner (System, in) ;/ 獲取輸入的精度jd=s nextlnt ();long startTime=System. nanoTime () ;/ 獲取程序開始時間while(Math.abs(y3)Math.pow(10,( -jd-1)if(y30)xl=x3;)elsex2=x3;x3=(x2-xl)*0.5+xl;y3=a Zhi (x3);count+;/用二分中點法向值靠近long end

3、Time=System.nanoTime(); long sum=endTime-startTime;/獲得程序結(jié)束時間String x6=x3 . toString () ;/ 截取精度String x7=x6.substring(0f (int) (jd+2);System, out .printIn:x+x7);System, out .printin、+y3);System.out.printin (運行程序所用的時間為:、 + sum+ 納紗勺;System, out .printin (二分分害!|次數(shù)為:x+count);class F/計算F(X)的函數(shù)( double Zhi

4、(double x) double y=0 ; y=l/x*(1-1/(Math.pow(1+x, 5)-2 ; return y;程序運行結(jié)果:精度為6時的結(jié)果請輸入精度6x 的值為:0.410414Y的逼近值為:4.1973889075563875E-7運行程序所用的時間為:134484 納紗二分分割次數(shù)為:20精度為8時的結(jié)果請輸入精度8x的值為:0.41041498Y的逼近值為:-3.945376469972.S07E-9運行程序所用的時間為:178545 納紗二分分割次數(shù)為:262.黃金分割法程序:import java.math.*;import java.util.Scanner

5、;public class Value2 (public static void main(String args) (int count=0 ;double yl=O ry2=0,y3=0 ry4=0 ;double xl=O 1 ;double x2=l ;Double x3=(x2-xl)*0.618+xl ;/ 黃金中點double jd=l ;/精度F a=new F();初始化函數(shù)Xyl=a Zhi(xl); y2=a.Zhi(x2); y3=a . Zhi(x3);System, out.printin ( 請輸入精度 );Scanner s=new Scanner (Syste

6、m, in) ;/ 獲取輸入的精度jd=s nextlnt();long startTime=System. nanoTime () ;/ 獲取程序開始時間while(Math.abs(y3)Math.pow(10 r (-jd-1) (if(y30)(xl=x3 ;)elsex2=x3 ;x3= (x2-xl)*0.618+xl;用黃金中點法向值靠近y3=a.Zhi(x3);count+;/獲得程序結(jié)束時間long endTime=System.nanoTime(); long sum=endTime-startTime;String x6=x3 . toString () ;/ 截取精度S

7、tring x7=x6.substring(0, (int) (jd+2);System, out printin (、x的值為:u+x7);System. out. printin (、V的逼近值為:、+y3);System. out. printin (u運行程序所用的時間為:、+sum+ 納紗);System, out.printin (黃金分割次數(shù)為:u+count);class F/計算F(X)的函數(shù)( double Zhi(double x) ( double y=0; y=l/x*(1-1/(Math.pow(1+x, 5)-2 ; return y; 程序運行結(jié)果精度為6時的結(jié)

8、果|請輸入精度6|x的值為:0.410414Y的逼近值為:5 . 818277895031088E-7運行程序所用的時間為:125935 納紗黃金分割次數(shù)為:19精度為8時的結(jié)果傳輸入精度IIk的值為;0.41041496Y的逼近值為:1.600973131843375E-9運行程序所用的時間為;153884 納紗黃金分割次數(shù)為:25函數(shù)的圖像及程序1.圖像程序代碼unport javax.swing.*;unport java.awt.*;unport java.lang.Math;public class Value3 extends JFrame (public Value3Q (add

9、(new X2FunctioiiPanel();public static void niain(Strmg aigs) (Value3 frame = new Value3Q;fiaine.setSize(700,400);fiaine.setTitleC,繪制函數(shù))fiaine.setLocationRelativeTo(null)/ centerfiaine.setDefaultCloseOpeiation(JFrame.EXIT_ON_CLOSE); flame. setVisible(tm e);class X2FunctioiiPanel extends JPaiiel (prot

10、ected void pamtComponent(Graphics g) ( super.pamtComponent(g);畫x軸g.drawLine(20. 150, getWidthQ - 20, 150);x箭頭g.drawLine(getWidtli() 30, 140, getWidthQ 20, 150);g.drawLine(getWidtli() 30, 160. getWidthQ 20, 150);/ “x”g.drawStimg(HXM, getWidth。 10, 150);畫y軸g.drawLine(200, getHeightQ 20, 200, 20);g.drawLine(190, 30, 200, 20);g.drawLine(210, 30, 200, 20);gdrawString(”Y”, 220, 30);/畫函數(shù)圖像Polygon p = new PolygonQ;double scaleFactor = 0.02;for (double x = 0; x v2 vlv2和V1W3可以看出有時候二分法算法快,有時候黃金分割法快,這是因為黃金分割法的速

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論