Matlab 編程入門.ppt_第1頁(yè)
Matlab 編程入門.ppt_第2頁(yè)
Matlab 編程入門.ppt_第3頁(yè)
Matlab 編程入門.ppt_第4頁(yè)
Matlab 編程入門.ppt_第5頁(yè)
已閱讀5頁(yè),還剩26頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、數(shù)學(xué)實(shí)驗(yàn),Matlab 編程入門 (一),Matlab 編程入門,Matlab 編程簡(jiǎn)介,Matlab 作為一種廣泛應(yīng)用于科學(xué)計(jì)算的工具軟件,不僅具有強(qiáng)大的數(shù)值計(jì)算、符號(hào)計(jì)算、矩陣運(yùn)算能力和豐富的繪圖功能,同時(shí)也具有和 C、FORTRAN 等高級(jí)語言一樣進(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í)行文件中的命令,直到全部命令執(zhí)行完畢。,用 Matlab 語言編寫的程序稱為 M

2、文件。,M 文件是由若干 Matlab 命令組合在一起構(gòu)成的,它可以完成某些操作,也可以實(shí)現(xiàn)某種算法。事實(shí)上,Matlab 提供的內(nèi)部函數(shù)以及各種工具箱,都是利用 Matlab 語言開發(fā)的 M 文件。用戶也可以結(jié)合自己的工作需要,開發(fā)自己的程序或工具箱。,M 文件,M 文件以 .m 為擴(kuò)展名。,M 文件是一個(gè)文本文件,可以用任何文本編輯器來建立和編輯,通常使用 Matlab 自帶的 M 文件編輯器。,M 文件的建立與打開,在命令窗口中輸入 f2cs,即可執(zhí)行該 M 文件。,例:編寫一個(gè)腳本文件將華氏溫度轉(zhuǎn)化為攝氏溫度,腳本文件舉例,腳本文件運(yùn)行后,文件中所產(chǎn)生的所有變量都駐留在 Matlab

3、當(dāng)前工作空間,可以用 whos 查看。,關(guān)系運(yùn)算,比較大小,如果結(jié)論是 真 則返回 1 ,否則返回 0,注意 = 與 = 的區(qū)別,關(guān)系操作符能用來比較兩個(gè)同樣大小的數(shù)組,或用來比較一個(gè)數(shù)組和一個(gè)標(biāo)量,在后一種情況,標(biāo)量和數(shù)組中的每一個(gè)元素相比較,比較結(jié)果與數(shù)組大小一樣。,關(guān)系運(yùn)算符,例:,關(guān)系運(yùn)算舉例, 2+2=4, 23, A=1 3 5; 2 0 6; B=3 1 0; 2 4 6; A=B, x=5 0; 4 2; x4,邏輯運(yùn)算,邏輯運(yùn)算符,A 4 5 6; 7 8 9; disp(B),數(shù)據(jù)輸出 disp,數(shù)據(jù)的輸出:disp,數(shù)據(jù)輸出 fprintf,format 中還可以使用一些

4、特殊格式,如:,n ( 換行 ) t ( 制表符 ) b ( 退格 ) ( 反斜桿 ) % ( 百分號(hào) ),數(shù)據(jù)輸出 fprintf, a=Hello; b=2.4; c=100*pi; fprintf(a=%s,b=%f,c=%en,a,b,c),例:,format 中的輸出格式要與輸出變量一一對(duì)應(yīng),可以沒有輸出變量,pause,程序的暫停:pause,pause 或 pause(n),若想強(qiáng)行終止程序的運(yùn)行,可以使用 Ctrl+c,其中 n 是延遲時(shí)間,以秒為單位; 若缺省,則將暫停程序,直到用戶按任意鍵后繼續(xù),pause off 屏蔽程序中所有 pause 的作用 pause on 打開

5、 pause 的作用,選擇結(jié)構(gòu) 是根據(jù)給定的條件成立或不成立,分別執(zhí)行不同的語句。Matlab 用于實(shí)現(xiàn)選擇結(jié)構(gòu)的語句有 if 語句和 switch 語句。,選擇結(jié)構(gòu),單分支結(jié)構(gòu),if expression (條件) statements (語句組) end,if 條件語句,if expression1 (條件1) statements1(語句組1) elseif expression2 (條件2) statements2(語句組2) . . elseif expressionm (條件m) statementsm(語句組m) else statements(語句組) end,多分支結(jié)構(gòu),if

6、 條件語句,if 語句舉例,數(shù)論中的一個(gè)有趣問題:任取一個(gè)正整數(shù),如果是偶數(shù),用 2 除,如果是奇數(shù),用 3 乘再加 1,反復(fù)這個(gè)過程,直到所得到的數(shù)為 1。 問:是否存在使該過程永不中止的整數(shù)? (exp01.m),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 語句舉例,根據(jù)表達(dá)式的不同

7、取值,分別執(zhí)行不同的語句。,switch expression (表達(dá)式) case value1 (表達(dá)式1) statement1(語句組1) case value2 (表達(dá)式2) statement2(語句組2) . . case valuem (表達(dá)式m) statementm(語句組m) otherwise statement (語句組) end,switch 語句,Matlab 首先計(jì)算 expression 的值,然后將它依次與各個(gè) case 指令后的檢測(cè)值進(jìn)行比較,當(dāng)比較結(jié)果為真時(shí),就執(zhí)行相應(yīng)的語句組,然后跳出 switch 結(jié)構(gòu)。,switch 后面的表達(dá)式 expressi

8、on 的值可以是一個(gè)標(biāo)量或字符串。,switch 語句,otherwise 指令可以不出現(xiàn)。,如果所有的比較結(jié)果都為假,則執(zhí)行 otherwise 后面的語句組,然后跳出 switch 結(jié)構(gòu)。,循環(huán)結(jié)構(gòu) 是按照給定的條件,重復(fù)執(zhí)行指定的語句。Matlab 用于實(shí)現(xiàn)循環(huán)結(jié)構(gòu)的語句有 for 語句和 while 語句,循環(huán)結(jié)構(gòu),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); end,循環(huán)語句可

9、以嵌套使用,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ù)先無法確定循環(huán)的次數(shù),則可以使用 while 循環(huán)。,這個(gè)例子給出了計(jì)算 eps 的一種方法。 這里我們用大寫 EPS,因此系統(tǒng)中 eps 的值不會(huì)被覆蓋。當(dāng) EPS=eps 時(shí),條件仍成立;而當(dāng) EPS=eps/2 時(shí),條件為假,退出循環(huán),所以最后應(yīng)有 EPS=eps/2。num 用來記錄循環(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,break 和 continue,break 語句用于終止循環(huán)的執(zhí)行,即跳出最內(nèi)層循環(huán) continue 語句用于結(jié)束本次循環(huán),進(jìn)行下一次循環(huán) break 和 continue 一般與 if 語句配合使用,其它流控制語句,首先

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論