[計算機軟件及應用]MATLAB程序設計ppt課件_第1頁
[計算機軟件及應用]MATLAB程序設計ppt課件_第2頁
[計算機軟件及應用]MATLAB程序設計ppt課件_第3頁
[計算機軟件及應用]MATLAB程序設計ppt課件_第4頁
[計算機軟件及應用]MATLAB程序設計ppt課件_第5頁
已閱讀5頁,還剩54頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、1MATLAB程序設計程序設計M文件文件程序控制構造程序控制構造函數文件函數文件程序舉例程序舉例程序調試程序調試2M文件文件M文件概述文件概述 用用MATLAB語言編寫的程序,稱為語言編寫的程序,稱為M文件。文件。M文件可以根據調用方式的不同分為兩文件可以根據調用方式的不同分為兩類:類:命令文件命令文件Script File和函數文件和函數文件Function File。3例例 分別建立命令文件和函數文件,將華氏溫分別建立命令文件和函數文件,將華氏溫度度f轉換為攝氏溫度轉換為攝氏溫度c。程序程序1: 首先建立命令文件并以文件名首先建立命令文件并以文件名f2c.m存盤。存盤。clear; %去除

2、工作空間中的變量去除工作空間中的變量f=inputInput Fahrenheit temperature:;c=5*f-32/9 run chxu1Input Fahrenheit temperature: 89c = 31.66674程序程序2:首先建立函數文件首先建立函數文件f2c.m。function c=f2cfc=5*f-32/9;然后在然后在MATLAB的命令窗口調用該函數文件。的命令窗口調用該函數文件。 clear; y=inputInput Fahrenheit temperature:;Input Fahrenheit temperature:89 x=f2cyx = 31

3、.66675M M文件的建立與翻開文件的建立與翻開 M文件是一個文本文件,它可以用任何編輯程序文件是一個文本文件,它可以用任何編輯程序來建立和編輯,而一般常用且最為方便的是使用來建立和編輯,而一般常用且最為方便的是使用MATLAB提供的文本編輯器。提供的文本編輯器。1建立新的建立新的M文件文件 為建立新的為建立新的M文件,啟動文件,啟動MATLAB文本編輯器有文本編輯器有3種方法:種方法: 1 菜單操作。從菜單操作。從MATLAB主窗口的主窗口的File菜單菜單中選擇中選擇New菜單項,再選擇菜單項,再選擇M-file命令,屏幕上將命令,屏幕上將出現出現MATLAB 文本編輯器窗口。文本編輯器

4、窗口。 2 命令操作。在命令操作。在MATLAB命令窗口輸入命令命令窗口輸入命令edit,啟動,啟動MATLAB文本編輯器后,輸入文本編輯器后,輸入M文件文件的內容并存盤。的內容并存盤。 3 命令按鈕操作。單擊命令按鈕操作。單擊MATLAB主窗口工具主窗口工具欄上的欄上的New M-File命令按鈕,啟動命令按鈕,啟動MATLAB文本文本編輯器后,輸入編輯器后,輸入M文件的內容并存盤。文件的內容并存盤。62翻開已有的翻開已有的M文件文件 翻開已有的翻開已有的M文件,也有文件,也有3種方法:種方法: 1 菜單操作。從菜單操作。從MATLAB主窗口的主窗口的File菜單中選擇菜單中選擇Open命令

5、,那么屏幕出現命令,那么屏幕出現Open對話框,在對話框,在Open對話框中選中所需翻開的對話框中選中所需翻開的M文件。在文檔窗口可以對翻開的文件。在文檔窗口可以對翻開的M文件文件進展編輯修改,編輯完成后,將進展編輯修改,編輯完成后,將M文件存文件存盤。盤。 2 命令操作。在命令操作。在MATLAB命令窗口輸命令窗口輸入命令:入命令:edit 文件名,那么翻開指定的文件名,那么翻開指定的M文文件。件。 3 命令按鈕操作。單擊命令按鈕操作。單擊MATLAB主窗主窗口工具欄上的口工具欄上的Open File命令按鈕,再從彈命令按鈕,再從彈出的對話框中選擇所需翻開的出的對話框中選擇所需翻開的M文件。

6、文件。7程序控制構造程序控制構造順序構造順序構造1數據的輸入數據的輸入從鍵盤輸入數據,那么可以使用從鍵盤輸入數據,那么可以使用input函數來函數來進展,該函數的調用格式為:進展,該函數的調用格式為: A=input提示信息,選項提示信息,選項;其中提示信息為一個字符串,用于提示用戶其中提示信息為一個字符串,用于提示用戶輸入什么樣的數據。輸入什么樣的數據。 假如在假如在input函數調用時采用函數調用時采用s選項,那么選項,那么允許用戶輸入一個字符串。例如,想輸入允許用戶輸入一個字符串。例如,想輸入一個人的姓名,可采用命令:一個人的姓名,可采用命令:xm=inputWhats your nam

7、e?,s;82數據的輸出數據的輸出 MATLAB提供的命令窗口輸出函提供的命令窗口輸出函數主要有數主要有disp函數,其調用格式為函數,其調用格式為 disp輸出項輸出項其中輸出項既可以為字符串,也可其中輸出項既可以為字符串,也可以為矩陣。以為矩陣。9 例例 輸入輸入x,y的值,并將它們的值互換后輸的值,并將它們的值互換后輸出。出。 程序如下:程序如下: x=inputInput x please.; y=inputInput y please.; z=x; x=y; y=z; dispx; dispy;Input x please.4Input y please.5 5 410例例 求一元二

8、次方程求一元二次方程ax2 +bx+c=0的根。的根。程序如下:程序如下:a=inputa=?;b=inputb=?;c=inputc=?;d=b*b-4*a*c;x=-b+sqrtd/2*a,-b-sqrtd/2*a;dispx1=,num2strx1,x2=,num2strx2;a=?9b=?13c=?2x1=-0.17506,x2=-1.269411程序的暫停程序的暫停 暫停程序的執行可以使用暫停程序的執行可以使用pause函數,函數,其調用格式為:其調用格式為: pause延遲秒數延遲秒數 假如省略延遲時間,直接使用假如省略延遲時間,直接使用pause,那么將暫停程序,直到用戶按任一鍵

9、那么將暫停程序,直到用戶按任一鍵后程序繼續執行。后程序繼續執行。 假設要強行中止程序的運行可使用假設要強行中止程序的運行可使用Ctrl+C命令。命令。12選擇構造選擇構造1if語句語句 在在MATLAB中,中,if語句有語句有3種格式。種格式。 1 單分支單分支if語句:語句:if 條件條件 語句組語句組 end當條件成立時,那么執行語句組,執行完之當條件成立時,那么執行語句組,執行完之后繼續執行后繼續執行if語句的后繼語句,假設條件不語句的后繼語句,假設條件不成立,那么直接成立,那么直接執行執行if語句的后繼語句語句的后繼語句。13 2 雙分支雙分支if語句:語句:if 條件條件 語句組語句

10、組1 else 語句組語句組2 end 當條件成立時,執行語句組當條件成立時,執行語句組1,否那么執行,否那么執行語句組語句組2,語句組,語句組1或語句組或語句組2執行后,再執執行后,再執行行if語句的后繼語句。語句的后繼語句。14 例例 計算分段函數的值。計算分段函數的值。 程序如下:程序如下:x=input請輸入請輸入x的值的值:;if x=A & c=a& c=0& c=9 dispabsc-abs0;else dispc;endPlease input a charsSPlease input a char:sSPlease input a char:TtPle

11、ase input a char:45 4 5Please input a char:5 5Please input a char:!172switch語句語句 switch語句根據表達式的取值不同,分別執行不語句根據表達式的取值不同,分別執行不同的語句,其語句格式為:同的語句,其語句格式為: switch 表達式表達式 case 表達式表達式1 語句組語句組1 case 表達式表達式2 語句組語句組2 case 表達式表達式m 語句組語句組m otherwise 語句組語句組n end18當表達式的值等于當表達式的值等于表達式表達式1的值時,的值時,執行語句組執行語句組1,當表達式的值等于,

12、當表達式的值等于表達式表達式2的值時,執行語句組的值時,執行語句組2,當表達式的值等于表達式當表達式的值等于表達式m的值時,的值時,執行語句組執行語句組m,當表達式的值不等,當表達式的值不等于于case所列的表達式的值時,執行所列的表達式的值時,執行語句組語句組n。當任意一個分支的語句。當任意一個分支的語句執行完后,執行完后,直接執行直接執行switch語句的語句的下一句。下一句。19例例 某商場對顧客所購置的商品實行打折銷售,某商場對顧客所購置的商品實行打折銷售,標準如下標準如下商品價格用商品價格用price來表示來表示: price200 沒有折扣沒有折扣 200price500 3%折扣

13、折扣 500price1000 5%折扣折扣 1000price2500 8%折扣折扣 2500price 5690ans = 5690Please input the number:12price = 12223try語句語句語句格式為:語句格式為:try 語句組語句組1catch 語句組語句組2endtry語句先試探性執行語句組語句先試探性執行語句組1,假如語句組,假如語句組1在執行過程中出現錯誤,那么將錯誤信息在執行過程中出現錯誤,那么將錯誤信息賦給保存的賦給保存的lasterr變量,并轉去執行語句組變量,并轉去執行語句組2。23例例 矩陣乘法運算要求兩矩陣的維數相容,否那么會矩陣乘法運

14、算要求兩矩陣的維數相容,否那么會出錯。先求兩矩陣的乘積,假設出錯,那么自動出錯。先求兩矩陣的乘積,假設出錯,那么自動轉去求兩矩陣的點乘。轉去求兩矩陣的點乘。程序如下:程序如下:A=1,2,3;4,5,6; B=7,8,9;10,11,12;try C=A*B;catch C=A.*B;endClasterr %顯示出錯原因顯示出錯原因24A = 1 2 3 4 5 6B = 7 8 9 10 11 12C = 7 16 27 40 55 72ans =Error using = mtimesInner matrix dimensions must agree.25循環構造循環構造1for語句語

15、句for語句的格式為:語句的格式為:for 循環變量循環變量=表達式表達式1:表達式表達式2:表達式表達式3 循環體語句循環體語句 end其中表達式其中表達式1的值為循環變量的初值,表達式的值為循環變量的初值,表達式2的值為步長,表達式的值為步長,表達式3的值為循環變量的的值為循環變量的終值。步長為終值。步長為1時,表達式時,表達式2可以省略。可以省略。26例例 一個三位整數各位數字的立方和等于該數本身那一個三位整數各位數字的立方和等于該數本身那么稱該數為水仙花數。輸出全部水仙花數。么稱該數為水仙花數。輸出全部水仙花數。 程序如下:程序如下:for m=100:999m1=fixm/100;

16、%求求m的百位數字的百位數字m2=remfixm/10,10; %求求m的十位數字的十位數字m3=remm,10; %求求m的個位數字的個位數字if m=m1*m1*m1+m2*m2*m2+m3*m3*m3dispmendend153 370 371 40727例例 ,當,當n=100時,求時,求y的值。的值。 程序如下:程序如下:y=0;n=100;for i=1:n y=y+1/2*i-1;endyy = 3.284328 在實際在實際MATLAB編程中,采用循環語句會編程中,采用循環語句會降低其執行速度,所以前面的程序通常由降低其執行速度,所以前面的程序通常由下面的程序來代替:下面的程序

17、來代替:n=100;i=1:2:2*n-1;y=sum1./i;y29for語句更一般的格式為:語句更一般的格式為: for 循環變量循環變量=矩陣表達式矩陣表達式 循環體語句循環體語句 end 執行過程是依次將矩陣的各列元執行過程是依次將矩陣的各列元素賦給循環變量按行素賦給循環變量按行,然后執,然后執行循環體語句,直至各列元素處理行循環體語句,直至各列元素處理完畢。完畢。30 例例 寫出以下程序的執行結果。寫出以下程序的執行結果。 s=0; a=12,13,14;15,16,17;18,19,20;21,22,23; for k=a s=s+k; end disps;39 48 57 663

18、12while語句語句 while語句的一般格式為:語句的一般格式為: while 條件條件 循環體語句循環體語句 end 其執行過程為:假設條件成立,那么其執行過程為:假設條件成立,那么執行循環體語句,執行后再判斷條件執行循環體語句,執行后再判斷條件是否成立,假如不成立那么跳出循環。是否成立,假如不成立那么跳出循環。32 例例 從鍵盤輸入假設干個數,當輸入從鍵盤輸入假設干個數,當輸入0時完畢輸入,求這時完畢輸入,求這些數的平均值和它們之和。些數的平均值和它們之和。程序如下:程序如下:sum=0;cnt=0;val=inputEnter a number end in 0:;while val

19、=0 sum=sum+val; cnt=cnt+1; val=inputEnter a number end in 0:;endif cnt 0 sum mean=sum/cntend333break語句和語句和continue語句語句 與循環構造相關的語句還有與循環構造相關的語句還有break語句和語句和continue語句。它們一般與語句。它們一般與if語句配合使用。語句配合使用。break語句用于終止循環的執行。當在循環體語句用于終止循環的執行。當在循環體內執行到該語句時,程序將跳出循環,繼內執行到該語句時,程序將跳出循環,繼續執行循環語句的下一語句。續執行循環語句的下一語句。conti

20、nue語句控制跳過循環體中的某些語句。語句控制跳過循環體中的某些語句。當在循環體內執行到該語句時,程序將跳當在循環體內執行到該語句時,程序將跳過循環體中所有剩下的語句,繼續下一次過循環體中所有剩下的語句,繼續下一次循環。循環。34例例 求求100,200之間第一個能被之間第一個能被21整除的整整除的整數。數。程序如下:程序如下:for n=100:200if remn,21=0 continueendbreakendnn = 105354循環的嵌套循環的嵌套 假如一個循環構造的循環體又包括一個循環構造,就稱為假如一個循環構造的循環體又包括一個循環構造,就稱為循環的嵌套,或稱為多重循環構造。循環

21、的嵌套,或稱為多重循環構造。 例例 假設一個數等于它的各個真因子之和,那么稱該數為假設一個數等于它的各個真因子之和,那么稱該數為完數,如完數,如6=1+2+3,所以,所以6是完數。求是完數。求1,500之間的全部完之間的全部完數。數。for m=1:500s=0;for k=1:m/2if remm,k=0s=s+k;endendif m=s dispm;endend6 28 496 6 28 49636函數文件函數文件函數文件的根本構造函數文件的根本構造 函數文件由函數文件由function語句引導,其根本構造為:語句引導,其根本構造為: function 輸出形參表輸出形參表=函數名函數名

22、輸入形參表輸入形參表 注釋說明部分注釋說明部分 函數體語句函數體語句其中以其中以function開頭的一行為引導行,表示該開頭的一行為引導行,表示該M文件文件是一個函數文件。是一個函數文件。函數名的命名規那么與變量名一樣。輸入形參為函函數名的命名規那么與變量名一樣。輸入形參為函數的輸入參數,輸出形參為函數的輸出參數。數的輸入參數,輸出形參為函數的輸出參數。當當輸出形參多于一個時,那么應該用方括號括起來輸出形參多于一個時,那么應該用方括號括起來。37 例例 編寫函數文件求半徑為編寫函數文件求半徑為r的圓的面積和的圓的面積和周長。周長。 函數文件如下:函數文件如下: function s,p=fc

23、ircler%CIRCLE calculate the area and perimeter of a circle of radii r%r 圓半徑圓半徑%s 圓面積圓面積%p 圓周長圓周長%2020年年7月月11日日s=pi*r*r;p=2*pi*r; fcircle2ans = 12.5664 fcircle1ans = 3.1416 s,p=fcircle1s = 3.1416p = 6.283238 函數調用函數調用函數調用的一般格式是:函數調用的一般格式是: 輸出實參表輸出實參表=函數名函數名輸入實參表輸入實參表 要注意的是,函數調用時各實參出現的順要注意的是,函數調用時各實參出現

24、的順序、個數,應與函數定義時形參的順序、序、個數,應與函數定義時形參的順序、個數一致,否那么會出錯。函數調用時,個數一致,否那么會出錯。函數調用時,先將實參傳遞給相應的形參,從而實現參先將實參傳遞給相應的形參,從而實現參數傳遞,然后再執行函數的功能。數傳遞,然后再執行函數的功能。39 例例 利用函數文件,實現直角坐標利用函數文件,實現直角坐標x,y與極坐與極坐標標,之間的轉換。之間的轉換。 函數文件函數文件tran.m:function rho,theta=tranx,yrho=sqrtx*x+y*y;theta=atany/x; 調用調用tran.m的命令文件的命令文件main1.m:x=i

25、nputPlease input x=:;y=inputPlease input y=:;rho,the=tranx,y;rhothe 在在MATLAB中,函數可以嵌套調用,即一個函數可以調中,函數可以嵌套調用,即一個函數可以調用別的函數,甚至調用它自身。一個函數調用它自身稱為用別的函數,甚至調用它自身。一個函數調用它自身稱為函數的遞歸調用。函數的遞歸調用。 rho, the=tran1,2rho = 2.2361the = 1.107140 例例 利用函數的遞歸調用,求利用函數的遞歸調用,求n!。!。 n!本身就是以遞歸的形式定義的:本身就是以遞歸的形式定義的:顯然,求顯然,求n!需要求需要

26、求n-1!,這時可采用遞歸,這時可采用遞歸調用。遞歸調用函數文件調用。遞歸調用函數文件factor.m如下:如下:function f=factornif n fout=charray1fout = 1 fout=charray1,2fout = 3 fout=charray1,2,3fout = 343全局變量全局變量全局變量用全局變量用global命令定義,格式為:命令定義,格式為:global 變量名變量名 例例 全局變量應用例如全局變量應用例如 先建立函數文件先建立函數文件wadd.m,該函數將輸入的參數加權相加。,該函數將輸入的參數加權相加。function f=waddx,yglo

27、bal ALPHA BETAf=ALPHA*x+BETA*y; 在命令窗口中輸入:在命令窗口中輸入:global ALPHA BETAALPHA=1;BETA=2;s=wadd1,2 global ALPHA BETA ALPHA=1; BETA=2; s=wadd1,2s = 544注注 函數文件的放置位置,一般自己的函數文件放在函數文件的放置位置,一般自己的函數文件放在當前目錄;當前目錄;假如對一個專題有了足夠多的函數,假如對一個專題有了足夠多的函數,可以生成一個工具箱可以生成一個工具箱,放在一個固定的目錄下,放在一個固定的目錄下,并在并在MATLAB中參加這個目錄途徑即可。中參加這個目錄

28、途徑即可。 使用函數可以加快計算速度。使用函數可以加快計算速度。MATLAB首次執行首次執行一個函數時,它將翻開的文件編譯為存儲器內部一個函數時,它將翻開的文件編譯為存儲器內部形式,加速了執行速度。普通的形式,加速了執行速度。普通的m文件不被編譯,文件不被編譯,在每次編譯時,文件將逐行解釋執行。在每次編譯時,文件將逐行解釋執行。 函數的前一部分注釋為幫助行,在使用函數的前一部分注釋為幫助行,在使用help命令命令時看得到這些注釋行,所以,寫函數時最好先添時看得到這些注釋行,所以,寫函數時最好先添加函數的功能注釋。加函數的功能注釋。45 函數可以按少于函數函數可以按少于函數M 文件中所規定的輸入

29、和輸出文件中所規定的輸入和輸出變量進展調用,但不能用多于函數變量進展調用,但不能用多于函數M 文件中所規定文件中所規定的輸入和輸出變量數目。假如輸入和輸出變量數目的輸入和輸出變量數目。假如輸入和輸出變量數目多于函數多于函數M 文件中文件中function 語句一開場所規定的數語句一開場所規定的數目,那么調用時自動返回一個錯誤。目,那么調用時自動返回一個錯誤。 當調用一個函數時,所用的輸入和輸出的參量的數當調用一個函數時,所用的輸入和輸出的參量的數目,在函數內是規定好的。函數工作空間變量目,在函數內是規定好的。函數工作空間變量nargin 包含輸入參量個數;函數工作空間變量包含輸入參量個數;函數

30、工作空間變量nargout 包含輸出參量個數。包含輸出參量個數。46 函數有它們自己的專用工作空間,它與函數有它們自己的專用工作空間,它與MATLAB 的工作空間分開。的工作空間分開。函數內變量與函數內變量與MATLAB 工作空工作空間之間唯一的聯絡是函數的輸入和輸出變量間之間唯一的聯絡是函數的輸入和輸出變量。 假如函數任一輸入變量值發生變化,其變化僅在假如函數任一輸入變量值發生變化,其變化僅在函數內出現,不影響函數內出現,不影響MATLAB 工作空間的變量。工作空間的變量。函數內所創立的變量只駐留在函數的工作空間,函數內所創立的變量只駐留在函數的工作空間,而且只在函數執行期間臨時存在,以后就

31、消失。而且只在函數執行期間臨時存在,以后就消失。因此,從一個調用到下一個調用,在函數工作空因此,從一個調用到下一個調用,在函數工作空間變量存儲信息是不可能的。間變量存儲信息是不可能的。 47 假如變量說明是全局的假如變量說明是全局的,函數可以與其它函數、函數可以與其它函數、MATLAB 工作空間和遞歸調用本身共享變量。為工作空間和遞歸調用本身共享變量。為了在函數內或了在函數內或MATLAB 工作空間中訪問全局變量,工作空間中訪問全局變量,變量必須說明是全局的。變量必須說明是全局的。 實際編程中,應盡量防止使用全局變量。實際編程中,應盡量防止使用全局變量。建議全建議全局變量名要長局變量名要長,包

32、含大寫字母,并有選擇地以首,包含大寫字母,并有選擇地以首次出現的次出現的M 文件的名字開頭,可以使全局變量之文件的名字開頭,可以使全局變量之間不必要的互作用減至最小。間不必要的互作用減至最小。 48 從函數從函數M 文件內可以調用腳本文件。在這種文件內可以調用腳本文件。在這種情況下,腳本文件查看函數工作空間,不查看情況下,腳本文件查看函數工作空間,不查看MATLAB 工作空間。從函數工作空間。從函數M 文件內調用的文件內調用的腳本文件不必用調用函數編譯到內存。函數每腳本文件不必用調用函數編譯到內存。函數每調用一次,它們就被翻開和解釋。因此,從函調用一次,它們就被翻開和解釋。因此,從函數數M 文

33、件內調用腳本文件減慢了函數的執行。文件內調用腳本文件減慢了函數的執行。49 MATLAB 函數函數error 在命令窗口顯示一個在命令窗口顯示一個字符串,放棄函數執行,把控制權返回給字符串,放棄函數執行,把控制權返回給鍵盤。這個函數對提示函數使用不當很有鍵盤。這個函數對提示函數使用不當很有用,如在以下文件片段中:用,如在以下文件片段中: if lengthval1 error VAL must be a scalar. end error 顯示消息字符串,把控制權返回給命顯示消息字符串,把控制權返回給命令窗口和鍵盤。令窗口和鍵盤。50程序舉例程序舉例例例 猜數游戲。首先由計算機產生猜數游戲。首

34、先由計算機產生1,100之間的隨機整數,然后由用戶猜測所之間的隨機整數,然后由用戶猜測所產生的隨機數。根據用戶猜測的情況產生的隨機數。根據用戶猜測的情況給出不同提示,如猜測的數大于產生給出不同提示,如猜測的數大于產生的數,那么顯示的數,那么顯示“High,小于那么,小于那么顯示顯示“Low,等于那么顯示,等于那么顯示“You won,同時退出游戲。用戶最多可以,同時退出游戲。用戶最多可以猜猜7次。次。51%Play the game of guess the numberx=fix100*rand; %a random number calculated by the computern=7;

35、test=1;for k=1:7 numb=int2strn; dispYou have a right to ,numb, guesses dispA guess is a number between 0 and 100 guess=inputEnter your guess:; if guessx dispHigh else dispYou won test=0; break; end n=n-1;endif test=1 dispYou lostend52You have a right to 7 guessesA guess is a number between 0 and 100

36、Enter your guess:9LowYou have a right to 5 guessesA guess is a number between 0 and 100Enter your guess:93LowYou have a right to 4 guessesA guess is a number between 0 and 100Enter your guess:90LowYou have a right to 3 guessesA guess is a number between 0 and 100Enter your guess:98HighYou have a rig

37、ht to 2 guessesA guess is a number between 0 and 100Enter your guess:96HighYou have a right to 1 guessesA guess is a number between 0 and 100Enter your guess:95You won53例例 用挑選法求某自然數范圍內的全部素數。用挑選法求某自然數范圍內的全部素數。 素數是大于素數是大于1,且除了,且除了1和它本身以外,不能被其和它本身以外,不能被其他任何整數所整除的整數。他任何整數所整除的整數。用挑選法求素數的根本思想是:要找出用挑選法求素數的

38、根本思想是:要找出2m之間的之間的全部素數,首先在全部素數,首先在2m中劃去中劃去2的倍數的倍數不包括不包括2,然后劃去,然后劃去3的倍數的倍數不包括不包括3,由于,由于4已被已被劃去,再找劃去,再找5的倍數的倍數 不包括不包括5,直到再劃,直到再劃去不超過的數的倍數,剩下的數都是素數。去不超過的數的倍數,剩下的數都是素數。54m=90ans = Columns 1 through 14 2 3 5 7 11 13 17 19 23 29 31 37 41 43 Columns 15 through 24 47 53 59 61 67 71 73 79 83 89m=inputm=; p=1:m; p1=0;for i=2:sqrtm for j=2*i:i:m pj=0; endendn=findp=0;pn55例例 求函數求函數fx在在a,b上的定積分,其幾何上的定積分,其幾何意義就是求曲線意義就是求曲線y=fx與直線與直線x=a,x=b,y=0所圍成的曲邊梯形的面積。為了求得曲所圍成的曲邊梯形的面積。為了求得曲邊梯形面積,先將積分區間邊梯形面積,先將積分區間a,b分成分成n等分,等分,每個區間的寬度為每個區間的寬度為h=b-a/n,對應地將,對應地將曲邊梯形分成曲邊梯形分成n等分,每個小

溫馨提示

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

評論

0/150

提交評論