九九热最新网址,777奇米四色米奇影院在线播放,国产精品18久久久久久久久久,中文有码视频,亚洲一区在线免费观看,国产91精品在线,婷婷丁香六月天

4-matlab編程初步

上傳人:fgh****35 文檔編號(hào):247450927 上傳時(shí)間:2024-10-18 格式:PPT 頁(yè)數(shù):43 大?。?51KB
收藏 版權(quán)申訴 舉報(bào) 下載
4-matlab編程初步_第1頁(yè)
第1頁(yè) / 共43頁(yè)
4-matlab編程初步_第2頁(yè)
第2頁(yè) / 共43頁(yè)
4-matlab編程初步_第3頁(yè)
第3頁(yè) / 共43頁(yè)

下載文檔到電腦,查找使用更方便

15 積分

下載資源

還剩頁(yè)未讀,繼續(xù)閱讀

資源描述:

《4-matlab編程初步》由會(huì)員分享,可在線閱讀,更多相關(guān)《4-matlab編程初步(43頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、單擊此處編輯母版標(biāo)題樣式,單擊此處編輯母版文本樣式,MATLAB,編程初步,2024年10月18日,2,Matlab,編程入門(mén),Matlab,編程簡(jiǎn)介,Matlab,作為一種廣泛應(yīng)用于科學(xué)計(jì)算的工具軟件,不僅具有強(qiáng)大的數(shù)值計(jì)算、符號(hào)計(jì)算、矩陣運(yùn)算能力和豐富的繪圖功能,同時(shí)也具有和,C,、,FORTRAN,等高級(jí)語(yǔ)言一樣進(jìn)行程序設(shè)計(jì)。,在,Matlab,程序設(shè)計(jì)中,要充分利用,Matlab,數(shù)據(jù)結(jié)構(gòu)的特點(diǎn),提高編程效率。,利用,Matlab,的程序控制功能,可以將有關(guān),Matlab,命令編成程序存儲(chǔ)在一個(gè)文件中,(,M,文件,),,然后在命令窗口中運(yùn)行該文件,,Matlab,就會(huì)自動(dòng)依次執(zhí)行文件

2、中的命令,直到全部命令執(zhí)行完畢。,2024年10月18日,3,用,Matlab,語(yǔ)言編寫(xiě)的程序稱為,M,文件,。,M,文件是由若干,Matlab,命令組合在一起構(gòu)成的,它可以完成某些操作,也可以實(shí)現(xiàn)某種算法。事實(shí)上,,Matlab,提供的內(nèi)部函數(shù)以及各種工具箱,都是利用,Matlab,語(yǔ)言開(kāi)發(fā)的,M,文件。用戶也可以結(jié)合自己的工作需要,開(kāi)發(fā)自己的程序或工具箱。,M,文件根據(jù)調(diào)用方式的不同可以分為兩類:,Script,:腳本文件,/,命令文件,Function,:函數(shù)文件,M,文件,M,文件以,.m,為擴(kuò)展名。,M,腳本文件,M,函數(shù)文件,腳本文件與函數(shù)文件的區(qū)別,2024年10月18日,7,M

3、,文件是一個(gè)文本文件,可以用任何文本編輯器來(lái)建立和編輯,通常使用,Matlab,自帶的,M,文件編輯器。,M,文件的建立與打開(kāi),新建一個(gè),M,文件,菜單操作,(,File, New M-File,),命令操作,(,edit,M,文件名,),命令按鈕,(,快捷鍵,),打開(kāi)已有的,M,文件,菜單操作,(,File, Open,),命令操作,(,edit,M,文件名,),命令按鈕,(,快捷鍵,),雙擊,M,文件,M,文件路徑的加載,通過(guò)修改,current directory,選項(xiàng)將,M,文件所在底層文件夾加載進(jìn)來(lái)才可以使用,。,點(diǎn)擊后面的符號(hào)即可修改路徑。,2024年10月18日,9,在命令窗口中

4、輸入,f2cs,,即可執(zhí)行該,M,文件。,例:,編寫(xiě)一個(gè)腳本文件將華氏溫度轉(zhuǎn)化為攝氏溫度,腳本文件舉例,clear;,%,清除當(dāng)前工作空間中的變量,f=,input(,Please,input Fahrenheit temperature:,);,c=5*(f-32)/9;,fprintf(The,centigrade temperature is %,gn,c,);,新建一個(gè),M,文件,f2cs.m,,內(nèi)容如下:,腳本文件運(yùn)行后,文件中所產(chǎn)生的,所有變量都駐留在,Matlab,當(dāng)前工作空間,,可以用,whos,查看。,2024年10月18日,10,關(guān)系運(yùn)算,小于,大于,=,大于等于,=,等于

5、,=,不等于,比較大小,如果結(jié)論是,真,則返回,1,,否則返回,0,注意,=,與,=,的區(qū)別,關(guān)系操作符能用來(lái)比較兩個(gè),同樣大小,的數(shù)組,或用來(lái)比較,一個(gè)數(shù)組和一個(gè)標(biāo)量,,在后一種情況,標(biāo)量和數(shù)組中的每一個(gè)元素相比較,比較結(jié)果與數(shù)組大小一樣。,關(guān)系,運(yùn)算符,2024年10月18日,11,例:,關(guān)系運(yùn)算,舉例,2+2=4,ans,=1,23,ans,=0,A=1 3 5; 2 0 6;,A=1 3 5 B=3 1 0,ans,=0 1 1,B=3 1 0; 2 4 6;,2 0 6 2 4 6 1 0 1,A=B,x=5 0; 4 2;,x=5 0,ans,=0 1,xany(A) any,按列

6、運(yùn)算,A=0 2,ans,=1 1,3 4 ,all(A,),5 6,ans,=0 1,all,也按列運(yùn)算,2024年10月18日,15,程序控制結(jié)構(gòu)有三種:,順序結(jié)構(gòu),、,選擇結(jié)構(gòu),和,循環(huán)結(jié)構(gòu),。任何復(fù)雜的程序都由這三種基本結(jié)構(gòu)組成。,順序結(jié)構(gòu),M,文件控制流,按排列順序依次執(zhí)行各條語(yǔ)句,直到程序的最后。,這是最簡(jiǎn)單的一種程序結(jié)構(gòu),一般涉及數(shù)據(jù)的輸入輸出、數(shù)據(jù)的計(jì)算或處理等。,2024年10月18日,16,例:,A=input,(,Please input A: ),數(shù)據(jù)的輸入:,input,A=input,(,提示信息,),其中,提示信息,為字符串,,該命令要求用戶輸入,A,的值,(,可

7、以是數(shù)或字符串,),數(shù)據(jù)輸入,input,A=input,(,提示信息,s),注:,此時(shí)輸入的字符串,不要加單引號(hào),!,如果是輸入字符串,也可以使用下面的方法,name=input,(,What,s your name?,s,),例:,2024年10月18日,17,disp,(X,),輸出變量,X,的值,,可以是數(shù)值矩陣或字符串,B=,1 2 3; 4 5 6; 7 8 9,;,disp,(B,),數(shù)據(jù)輸出,disp,數(shù)據(jù)的輸出:,disp,A=,Hello,Tom,!,;,disp,(A,),例:,2024年10月18日,18,數(shù)據(jù)輸出,fprintf,fprintf,(fid,format

8、,variables,),按指定的,格式,將變量的值輸出到指定的,文件,數(shù)據(jù)的輸出:,fprintf,fid,為文件句柄,若缺省,則將變量的值輸出到屏幕上,format,用來(lái)指定數(shù)據(jù)輸出時(shí)采用的格式,常見(jiàn)的有,%e,(,采用科學(xué)計(jì)算形式,),%f,(,采用浮點(diǎn)數(shù)形式,),%g,(,由系統(tǒng)自動(dòng)選取上述兩種格式之一,),%s,(,輸出字符串,),format,中還可以使用一些特殊格式,如:,n,(,換行,),t,(,制表符,),b,(,退格,),(,反斜桿,),%,(,百分號(hào),),2024年10月18日,19,數(shù)據(jù)輸出,fprintf,a=,Hello,; b=2.4; c=100*pi;,fpr

9、intf,(,a=%,s,b,=%,f,c,=%,en,a,b,c,),a=Hello ,b=2.400000, c=3.141593e+002,例:,format,中的輸出格式要與輸出變量一一對(duì)應(yīng),可以沒(méi)有輸出變量,fprintf,(,Today is,the 77 anniversary of the,Mukden,Incident,n,),例:,2024年10月18日,20,pause,程序的暫停,:,pause,pause,或,pause(n,),若想強(qiáng)行終止程序的運(yùn)行,可以使用,Ctrl+c,其中,n,是延遲時(shí)間,以秒為單位;,若缺省,則將暫停程序,直到用戶按任意鍵后繼續(xù),pause

10、 off,屏蔽程序中所有,pause,的作用,pause on,打開(kāi),pause,的作用,2024年10月18日,21,選擇結(jié)構(gòu),是根據(jù)給定的條件成立或不成立,分別執(zhí)行不同的語(yǔ)句。,Matlab,用于實(shí)現(xiàn)選擇結(jié)構(gòu)的語(yǔ)句有,if,語(yǔ)句,和,switch,語(yǔ)句,。,選擇結(jié)構(gòu),2024年10月18日,22,單分支結(jié)構(gòu),if,expression,(條件),statements,(語(yǔ)句組),end,if,條件語(yǔ)句,if,expression,(條件),statements1,(語(yǔ)句組,1,),else,statements2,(語(yǔ)句組,2,),end,雙分支結(jié)構(gòu),2024年10月18日,23,if,e

11、xpression1,(,條件,1,),statements1,(,語(yǔ)句組,1,),elseif,expression2,(,條件,2,),statements2,(,語(yǔ)句組,2,),. .,elseif,expressionm,(,條件,m,),statementsm,(,語(yǔ)句組,m,),else,statements,(,語(yǔ)句組,),end,多分支結(jié)構(gòu),if,條件語(yǔ)句,2024年10月18日,24,if,語(yǔ)句舉例,數(shù)論中的一個(gè)有趣問(wèn)題:任取一個(gè)正整數(shù),如果是偶數(shù),用,2,除,如果是奇數(shù),用,3,乘再加,1,,反復(fù)這個(gè)過(guò)程,直到所得到的數(shù)為,1,。,問(wèn):是否存在使該過(guò)程永不中止的整數(shù),?,(

12、,exp01.m,),2024年10月18日,25,while,1,n=,input,(Please,enter,n(nonpositive,quit):),;,m=n;,if,n1,if,rem,(n,2)=0,n=n/2,;,else,n=3*n+1,;,end,fprintf,(n,n=%,d,n,),;,end,fprintf,(n,%d is not we need! continue . ,n,m,),;,end,if,語(yǔ)句舉例,2024年10月18日,26,根據(jù)表達(dá)式的不同取值,分別執(zhí)行不同的語(yǔ)句。,switch,expression,(表達(dá)式),case,value1,(表達(dá)式

13、,1,),statement1,(語(yǔ)句組,1,),case,value2,(表達(dá)式,2,),statement2,(語(yǔ)句組,2,),. .,case,valuem,(表達(dá)式,m,),statementm,(語(yǔ)句組,m,),otherwise,statement,(語(yǔ)句組),end,switch,語(yǔ)句,2024年10月18日,27,Matlab,首先計(jì)算,expression,的值,然后將它依次與各個(gè),case,指令后的檢測(cè)值進(jìn)行比較,當(dāng)比較結(jié)果為真時(shí),就執(zhí)行相應(yīng)的語(yǔ)句組,然后跳出,switch,結(jié)構(gòu)。,switch,后面的表達(dá)式,expression,的值可以是一個(gè)標(biāo)量或字符串。,switch

14、,語(yǔ)句,otherwise,指令可以不出現(xiàn)。,如果所有的比較結(jié)果都為假,則執(zhí)行,otherwise,后面的語(yǔ)句組,然后跳出,switch,結(jié)構(gòu)。,2024年10月18日,28,循環(huán)結(jié)構(gòu),是按照給定的條件,重復(fù)執(zhí)行指定的語(yǔ)句。,Matlab,用于實(shí)現(xiàn)循環(huán)結(jié)構(gòu)的語(yǔ)句有,for,語(yǔ)句,和,while,語(yǔ)句,循環(huán)結(jié)構(gòu),2024年10月18日,29,for,variable=expression,statement,(,循環(huán)體,),end,循環(huán)變量,表達(dá)式,expression,可以是行向量,也可以是矩陣,for,循環(huán),clear;,y=0; n=100;,for,k=1:n,y=y+1/(2*k-1)

15、;,end,例:,已知,,當(dāng),n,=100,時(shí),求,y,的值,2024年10月18日,30,循環(huán)語(yǔ)句可以嵌套使用,while,循環(huán),while,expression,(,條件,),statement,(,循環(huán)體,),end,不能在,for,循環(huán)體,內(nèi)改變循環(huán)變量的值,為了提高代碼的運(yùn)行效率,,應(yīng)盡可能提高代碼的向量化程度,避免,for,循環(huán)的使用,如果預(yù)先就知道循環(huán)的次數(shù),則可以采用,for,循環(huán),;否則,如果預(yù)先無(wú)法確定循環(huán)的次數(shù),則可以使用,while,循環(huán),。,2024年10月18日,31,這個(gè)例子給出了計(jì)算,eps,的一種方法。,這里我們用大寫(xiě),EPS,,因此系統(tǒng)中,eps,的值不會(huì)被

16、覆蓋。當(dāng),EPS=,eps,時(shí),條件仍成立;而當(dāng),EPS=eps/2,時(shí),條件為假,退出循環(huán),所以最后應(yīng)有,EPS=eps/2,。,num,用來(lái)記錄循環(huán)次數(shù)。,計(jì)算,Matlab,中,eps,值,(,exp02.m,),while,循環(huán)舉例,num=0; EPS=1;,while,(1+EPS)1,EPS=EPS/2;,num=num+1;,end,eps,為浮點(diǎn)運(yùn)算的相對(duì)精度,2024年10月18日,32,break,和,continue,break,語(yǔ)句用于,終止循環(huán),的執(zhí)行,即跳出最內(nèi)層循環(huán),continue,語(yǔ)句用于結(jié)束,本次循環(huán),,進(jìn)行下一次循環(huán),break,和,continue,一

17、般與,if,語(yǔ)句配合使用,其它流控制語(yǔ)句,return,return,語(yǔ)句用于,退出,正在運(yùn)行的腳本或函數(shù),通常用在函數(shù)文件中。,2024年10月18日,33,首先由計(jì)算機(jī)隨機(jī)產(chǎn)生一個(gè),1,100,之間的一個(gè)整數(shù),然后由用戶猜測(cè)所產(chǎn)生的這個(gè)數(shù)。根據(jù)用戶猜測(cè)的情況給出不同的提示,如果猜測(cè)的數(shù)大于產(chǎn)生的數(shù),則顯示 “,High”,,小于則顯示,“,Low,”,,等于則顯示 “,You win,!”,,同時(shí)退出游戲。用戶最多有,7,次機(jī)會(huì)。,(,exp03.m,),程序示例,猜數(shù)游戲,2024年10月18日,34,%,猜數(shù)游戲,clear;,x=round(100*rand); %,由計(jì)算機(jī)隨機(jī)產(chǎn)生

18、一個(gè),0,100,的整數(shù),n=7; %,有,7,次機(jī)會(huì),test=1;,disp,(,歡迎參加猜數(shù)游戲!你共有,num2str(n),次機(jī)會(huì),);,disp,(,請(qǐng)輸入一個(gè),0,到,100,之間的一個(gè)整數(shù),);,for k=1:n,guess=,input(Enter,your guess: );,if guess x,disp(high,);,else,disp(You,win!);,test=0;,break;,end,n=n-1;,disp,(,你還有,num2str(n),次機(jī)會(huì)!,);,end,if test=1,disp(You,lost!),end,程序示例,2024年10月18

19、日,35,function,輸出形參列表,=,函數(shù)名,(,輸入形參列表,),%,注釋說(shuō)明部分,(,可選,),函數(shù)體語(yǔ)句,(,必須,),第一行為,引導(dǎo)行,,表示該,M,文件是函數(shù)文件,函數(shù)名的命名規(guī)則與變量名相同,(,必須以字母開(kāi)頭,),當(dāng)輸出形參多于一個(gè)時(shí),用,方括號(hào),括起來(lái),函數(shù)必須是一個(gè),單獨(dú)的,M,文件,函數(shù),文件名,必須與,函數(shù)名,一致,以,百分號(hào),開(kāi)始的語(yǔ)句為,注釋語(yǔ)句,函數(shù)文件,函數(shù)文件由,function,語(yǔ)句引導(dǎo),2024年10月18日,36,function,y =,myfliplr,(x,),%,returns X with row preserved and column

20、s,%,flipped in the left/right direction,%,% X = 1 2 3 becomes 3 2 1,% 4 5 6 6 5 4,%,num_col,=size(x,2);,%,取,x,的列數(shù),y = x,(:,num_col:-1:1),;,先輸入矩陣,x,,而后寫(xiě)上,myfliplr(x,),函數(shù)文件舉例,myfliplr.m,2024年10月18日,37,function,printyh(n,),%,打印楊輝三角形,本函數(shù)沒(méi)有輸出參數(shù),yh,=1;,disp(yh,);,if n=1,return,; end,yh,=1,1;,disp(yh,);,fo

21、r k=3:n,yh_old,=,yh,; k2=,ceil,(k/2);,for l=2:k2,yh(l,)=yh_old(l-1)+yh_old(l);,end,yh(k2+1:k)=yh(k-k2:-1:1);,disp(yh,);,end,(在,matlab,中可輸入,printyh(5),),函數(shù)文件舉例,printyh.m,2024年10月18日,38,函數(shù)調(diào)用的一般格式,輸出實(shí)參列表,=,函數(shù)名,(,輸入實(shí)參列表,),函數(shù)調(diào)用時(shí),,實(shí)參的順序,應(yīng)與函數(shù)定義時(shí)的,形參的順序,一致。,函數(shù)可以,嵌套調(diào)用,,即一個(gè)函數(shù)可以被其它函數(shù)調(diào)用,甚至可以被它自身調(diào)用,此時(shí)稱為,遞歸調(diào)用,。,函

22、數(shù)所傳遞的參數(shù)具有可調(diào)性,,Matlab,用兩個(gè)永久變量,nargin,和,nargout,分別記錄調(diào)用該函數(shù)時(shí)的輸入實(shí)參和輸出實(shí)參的個(gè)數(shù)。,函數(shù)調(diào)用,2024年10月18日,39,%,函數(shù)文件,factor.m,function,f=,factor,(n,),if (n=1),f=1;,else,f=n*,factor,(n-1);,end,%,main.m,%,計(jì)算,s=1!+2!+3!+4!+5!,%,clear;,s=0;,for i=1:5,s=,s+,factor,(i,);,end,fprintf,( s=%g ,n,s,),例:利用函數(shù)的遞歸調(diào)用計(jì)算,n,!,遞歸函數(shù)舉例,20

23、24年10月18日,40,% ex4argin.m,function out=ex4argin(a,b),if (,nargin,=1,),out=a;,elseif,(,nargin,=2,),out=a*b;,end,參數(shù)的可調(diào)性舉例,% ex4argout.m,function ,p,q,=ex4argout(a,b),if (,nargout,=1,),p=,a+b,;,elseif,(,nargout,=2,),p=,a+b,; q=a-b;,end,2024年10月18日,41,上機(jī)任務(wù),2.,建立,M,函數(shù)文件作以下計(jì)算,:,1),自然數(shù),n,的階乘;,2) n,中取,m,的組合數(shù)。,(,1,)建立,M,腳本文件求,1,到,100,的和。,(,2,)建立,M,函數(shù)文件求,并求,n=50,100,150,的值。,2024年10月18日,42,上機(jī)任務(wù),3.,4.,5.,編寫(xiě),M,腳本文件完成下題:,

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

相關(guān)資源

更多
正為您匹配相似的精品文檔

相關(guān)搜索

關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!