




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、M文件與程序調(diào)試文件與程序調(diào)試 在入門階段,通常在行命令模式下工作。鍵在入門階段,通常在行命令模式下工作。鍵 入一行命令后,讓系統(tǒng)立即執(zhí)行該命令。用入一行命令后,讓系統(tǒng)立即執(zhí)行該命令。用 這種方法時(shí),程序可讀性差且難以存儲(chǔ)。對(duì)這種方法時(shí),程序可讀性差且難以存儲(chǔ)。對(duì) 于復(fù)雜的問題,應(yīng)編成可存儲(chǔ)的程序文于復(fù)雜的問題,應(yīng)編成可存儲(chǔ)的程序文 件,件,再讓再讓MATLABMATLAB執(zhí)行該程序。執(zhí)行該程序。 MATLABMATLAB的程序類型有三種:的程序類型有三種: 直接在命令窗口下執(zhí)行的直接在命令窗口下執(zhí)行的MATLABMATLAB指令;指令; 可以存取的可以存取的M M文件,也叫文件,也叫腳本文件
2、腳本文件。 最后一種是最后一種是函數(shù)(函數(shù)(functionfunction)文件。)文件。 后兩種都是以后兩種都是以.m.m為后綴的為后綴的M M文件。文件。一、一、MATLAB程序程序后面的內(nèi)容是程序的注解,注解使程序更具可讀性。后面的內(nèi)容是程序的注解,注解使程序更具可讀性。在主程序開頭用在主程序開頭用clearclear指令清除變量,以消除工作空間中指令清除變量,以消除工作空間中其他變量對(duì)程序運(yùn)行的影響。但注意在子程序中不要用其他變量對(duì)程序運(yùn)行的影響。但注意在子程序中不要用clearclear。參數(shù)值要集中放在程序的開始部分,以便維護(hù)。應(yīng)充分利參數(shù)值要集中放在程序的開始部分,以便維護(hù)。應(yīng)
3、充分利用用MATLABMATLAB工具箱提供的指令來執(zhí)行所要進(jìn)行的運(yùn)算,在語工具箱提供的指令來執(zhí)行所要進(jìn)行的運(yùn)算,在語句行之后輸入分號(hào)使其及中間結(jié)果不在屏幕上顯示,以提句行之后輸入分號(hào)使其及中間結(jié)果不在屏幕上顯示,以提高執(zhí)行速度。高執(zhí)行速度。程序盡量模塊化,也就是采用主程序調(diào)用子程序的方法,程序盡量模塊化,也就是采用主程序調(diào)用子程序的方法,將所有子程序合并在一起來執(zhí)行全部的操作。將所有子程序合并在一起來執(zhí)行全部的操作。充分利用充分利用DebuggerDebugger來進(jìn)行程序的調(diào)試(設(shè)置斷點(diǎn)、單步執(zhí)來進(jìn)行程序的調(diào)試(設(shè)置斷點(diǎn)、單步執(zhí)行、連續(xù)執(zhí)行)。行、連續(xù)執(zhí)行)。設(shè)置好設(shè)置好MATLABMAT
4、LAB的工作路徑,以便程序運(yùn)行。的工作路徑,以便程序運(yùn)行。二、二、 MATLAB程序的基本設(shè)計(jì)原則程序的基本設(shè)計(jì)原則說明說明清除命令清除命令:清除:清除workspaceworkspace中的變量和圖形(中的變量和圖形(clear,closeclear,close)定義變量定義變量:包括全局變量的聲明及參數(shù)值的設(shè)定:包括全局變量的聲明及參數(shù)值的設(shè)定逐行執(zhí)行命令逐行執(zhí)行命令:指:指MATLABMATLAB提供的運(yùn)算指令或工具箱提供的運(yùn)算指令或工具箱 提供的專用命令提供的專用命令控制循環(huán)控制循環(huán) 包含包含:for,if,then,switch,while :for,if,then,switch,w
5、hile 等語句等語句 逐行執(zhí)行命令逐行執(zhí)行命令 endend繪圖命令繪圖命令:將運(yùn)算結(jié)果繪制出來:將運(yùn)算結(jié)果繪制出來三、三、 MATLAB程序體的基本組成結(jié)構(gòu)程序體的基本組成結(jié)構(gòu)復(fù)雜程序還需要調(diào)用子程序,或與其他應(yīng)用程序結(jié)合起來。復(fù)雜程序還需要調(diào)用子程序,或與其他應(yīng)用程序結(jié)合起來。在編輯環(huán)境中,文字的不同顏色顯示表明文字的不同在編輯環(huán)境中,文字的不同顏色顯示表明文字的不同屬性。屬性。 綠色:注解綠色:注解;黑色:程序主體黑色:程序主體;紅色:屬性值的設(shè)定;紅色:屬性值的設(shè)定;藍(lán)色:控制流程。藍(lán)色:控制流程。在運(yùn)行程序之前,必須設(shè)置好在運(yùn)行程序之前,必須設(shè)置好MATLABMATLAB的工作路徑
6、,的工作路徑,使使得所要運(yùn)行的程序及運(yùn)行程序所需要的其他文件處在得所要運(yùn)行的程序及運(yùn)行程序所需要的其他文件處在當(dāng)前目錄之下,只有這樣,才可以使程序得以正常運(yùn)當(dāng)前目錄之下,只有這樣,才可以使程序得以正常運(yùn)行。否則可能導(dǎo)致無法讀取某些系統(tǒng)文件或數(shù)據(jù),從行。否則可能導(dǎo)致無法讀取某些系統(tǒng)文件或數(shù)據(jù),從而程序無法執(zhí)行。而程序無法執(zhí)行。通過通過cdcd指令在命令窗口中可以更改、顯示當(dāng)前工作路指令在命令窗口中可以更改、顯示當(dāng)前工作路徑。徑。通過路徑瀏覽器(通過路徑瀏覽器(path browserpath browser)也可以進(jìn)行設(shè)置。)也可以進(jìn)行設(shè)置。四、四、M文件的編輯及工作路徑設(shè)置文件的編輯及工作路徑
7、設(shè)置五、五、腳本腳本文件文件六、六、腳本腳本文件的創(chuàng)建與執(zhí)行文件的創(chuàng)建與執(zhí)行七、七、腳本腳本文件示例程序(文件示例程序(【例【例1 1】 已知已知A=5 8 9;A=5 8 9; B=11,12,13;14,15,16;17,18,19; B=11,12,13;14,15,16;17,18,19; 建立一個(gè)命令文件計(jì)算建立一個(gè)命令文件計(jì)算BABAT T的值的值, ,然后將然后將 變量變量A,BA,B的值互換。的值互換。%exchange.m文件文件A=5 8 9;B=11,12,13;14,15,16;17,18,19;compud %計(jì)算計(jì)算BATC=A;A=B;B=C;AB%compud.
8、m文件文件D=B*AT D = 268 334 400A = 11 12 13 14 15 16 17 18 19B = 5 8 9設(shè)置或清除斷點(diǎn):使用快捷鍵設(shè)置或清除斷點(diǎn):使用快捷鍵F12F12。執(zhí)行:使用快捷鍵執(zhí)行:使用快捷鍵F5F5。單步執(zhí)行:使用快捷鍵單步執(zhí)行:使用快捷鍵F10F10。step instep in:當(dāng)遇見函數(shù)時(shí),進(jìn)入函數(shù)內(nèi)部,使用快捷鍵:當(dāng)遇見函數(shù)時(shí),進(jìn)入函數(shù)內(nèi)部,使用快捷鍵F11F11。step outstep out:執(zhí)行流程跳出函數(shù),使用快捷鍵:執(zhí)行流程跳出函數(shù),使用快捷鍵Shift+F11Shift+F11。執(zhí)行到光標(biāo)所在位置:非常遺憾這項(xiàng)功能沒有快捷鍵,執(zhí)行到
9、光標(biāo)所在位置:非常遺憾這項(xiàng)功能沒有快捷鍵,只能使用菜單來完成這樣的功能。只能使用菜單來完成這樣的功能。 觀察變量或表達(dá)式的值:將鼠標(biāo)放在要觀察的變量上停觀察變量或表達(dá)式的值:將鼠標(biāo)放在要觀察的變量上停留片刻,就會(huì)顯示出變量的值,當(dāng)矩陣太大時(shí),只顯示留片刻,就會(huì)顯示出變量的值,當(dāng)矩陣太大時(shí),只顯示矩陣的維數(shù)。矩陣的維數(shù)。退出調(diào)試模式:沒有設(shè)置快捷鍵,使用菜單或者快捷按退出調(diào)試模式:沒有設(shè)置快捷鍵,使用菜單或者快捷按鈕來完成。鈕來完成。八、八、調(diào)試器的使用調(diào)試器的使用九、九、腳本腳本文件注意事項(xiàng)文件注意事項(xiàng)十、十、函數(shù)文件函數(shù)文件們?cè)O(shè)置為全局變量。們?cè)O(shè)置為全局變量。 (globalglobal)1
10、.1. 具有標(biāo)準(zhǔn)的基本結(jié)構(gòu)。具有標(biāo)準(zhǔn)的基本結(jié)構(gòu)。 function out1,out2,.=filename(in1,in2,.)輸入?yún)?shù)輸入?yún)?shù)輸出參數(shù)輸出參數(shù)可以是標(biāo)量、數(shù)組、矩陣或字符串可以是標(biāo)量、數(shù)組、矩陣或字符串十一、十一、函數(shù)文件基本結(jié)構(gòu)函數(shù)文件基本結(jié)構(gòu) 注注 1 1、其中函數(shù)名的命名規(guī)則與變量名相同。當(dāng)輸出、其中函數(shù)名的命名規(guī)則與變量名相同。當(dāng)輸出 參數(shù)多于參數(shù)多于1 1個(gè)時(shí),則應(yīng)該用方括號(hào)括起來。個(gè)時(shí),則應(yīng)該用方括號(hào)括起來。 2 2、函數(shù)文件也可以完全沒有輸入、輸出變量,簡、函數(shù)文件也可以完全沒有輸入、輸出變量,簡 單定義為:單定義為: function = filename十
11、二、十二、函數(shù)文件示例程序函數(shù)文件示例程序 function p=ff(x) %示例程序之一示例程序之一 n=length(x); for i=1:n pp(i)=sqrt(x(i)2+10); end p=pp*2-5; 函數(shù)文件函數(shù)文件ff.mff.m:函數(shù)調(diào)用:函數(shù)調(diào)用:x=1:5y=ff(x)y=ff(1:5)例:有輸入輸出參數(shù)的函數(shù)文件建立和調(diào)用例:有輸入輸出參數(shù)的函數(shù)文件建立和調(diào)用y = 1.6332 2.4833 3.7178 5.1980 6.8322結(jié)果顯示:結(jié)果顯示:十二、十二、函數(shù)文件示例程序函數(shù)文件示例程序 function test1 %示例程序之二示例程序之二 a=
12、function test b=1 2;3 4 函數(shù)文件函數(shù)文件test1.mtest1.m:函數(shù)調(diào)用:函數(shù)調(diào)用:在命令窗口鍵入在命令窗口鍵入test1test1RunRun運(yùn)行運(yùn)行例:無輸入輸出參數(shù)的函數(shù)文件建立和調(diào)用例:無輸入輸出參數(shù)的函數(shù)文件建立和調(diào)用十三、十三、函數(shù)文件注意事項(xiàng)函數(shù)文件注意事項(xiàng)十四、十四、函數(shù)文件與腳本文件的區(qū)別函數(shù)文件與腳本文件的區(qū)別十五、變量作用域十五、變量作用域幾點(diǎn)說明:幾點(diǎn)說明: 函數(shù)文件不能直接訪問函數(shù)文件不能直接訪問MATLABMATLAB工作空間中的全局變工作空間中的全局變量,它只能讀取通過參數(shù)傳入的變量和那些定義為全量,它只能讀取通過參數(shù)傳入的變量和那些
13、定義為全局變量的工作空間變量。局變量的工作空間變量。 若沒有特別定義,則函數(shù)內(nèi)的變量為局部變量,即若沒有特別定義,則函數(shù)內(nèi)的變量為局部變量,即使它與工作空間的變量同名,在該函數(shù)返回之后,這使它與工作空間的變量同名,在該函數(shù)返回之后,這些變量會(huì)自動(dòng)地被清除掉,在其它函數(shù)內(nèi)和基本工作些變量會(huì)自動(dòng)地被清除掉,在其它函數(shù)內(nèi)和基本工作空間中都不能被調(diào)用??臻g中都不能被調(diào)用。 如果在函數(shù)內(nèi)訪問全局變量,必須在函數(shù)內(nèi)用如果在函數(shù)內(nèi)訪問全局變量,必須在函數(shù)內(nèi)用globalglobal指令定義,定義的全局變量可以在函數(shù)內(nèi)使用。指令定義,定義的全局變量可以在函數(shù)內(nèi)使用。 使用全局變量前應(yīng)在命令窗口中定義該變量,但
14、需使用全局變量前應(yīng)在命令窗口中定義該變量,但需要準(zhǔn)確定義其維數(shù)和維數(shù)大小。要準(zhǔn)確定義其維數(shù)和維數(shù)大小。命令形式:命令形式:global global 全局變量列表全局變量列表十六、全局變量的語句格式十六、全局變量的語句格式在定義和使用全局變量時(shí),應(yīng)注意:在定義和使用全局變量時(shí),應(yīng)注意: 全局變量列表中各個(gè)變量名不能用逗號(hào)分隔。例如:全局變量列表中各個(gè)變量名不能用逗號(hào)分隔。例如:使用使用global a b c,dglobal a b c,d命令命令MATLABMATLAB編譯器會(huì)認(rèn)為編譯器會(huì)認(rèn)為a,b,ca,b,c三三個(gè)變量為全局變量,而個(gè)變量為全局變量,而d d是用戶想顯示的變量,從而出是用
15、戶想顯示的變量,從而出現(xiàn)不希望的結(jié)果?,F(xiàn)不希望的結(jié)果。 全局變量在使用前必須在全局變量在使用前必須在MATLABMATLAB工作空間中定義。工作空間中定義。在某一個(gè)具體的在某一個(gè)具體的MATLABMATLAB函數(shù)中如果要使用全局變量必函數(shù)中如果要使用全局變量必須在函數(shù)前面用須在函數(shù)前面用globalglobal命令聲明,否則在該函數(shù)即使命令聲明,否則在該函數(shù)即使使用了該變量名,也會(huì)被看作局部變量使用。使用了該變量名,也會(huì)被看作局部變量使用。 為保證函數(shù)的獨(dú)立性,一般情況下不使用全局變量。為保證函數(shù)的獨(dú)立性,一般情況下不使用全局變量。 在在MATLAB命令窗中運(yùn)行以下指令:命令窗中運(yùn)行以下指令:
16、global z1 z2z1=1:-0.1:0.6;z2=0:0.5:2;編寫函數(shù)文件編寫函數(shù)文件ff1.mfunction p=ff1(x)global z1 z2n=length(x);for i=1:n pp(i)=sqrt(x(i)2+10+z1(i)+z2(i);end p=pp*2-5; 例:在函數(shù)例:在函數(shù)ff.m中增加全局變量中增加全局變量十七、十七、全局變量應(yīng)用示例程序全局變量應(yīng)用示例程序 x=1:5;Y=ff1(x)程序運(yùn)行:程序運(yùn)行:Y = 3.6332 5.2833 7.3178 9.5980 12.0322結(jié)果顯示:結(jié)果顯示:十八、十八、 常用的人機(jī)交互命令常用的人機(jī)
17、交互命令(1 1)單變量輸入命令)單變量輸入命令 格式:格式:變量名變量名input(input(提示語句提示語句) ) 例如:例如:x=input(x=input(請(qǐng)輸入數(shù)值:請(qǐng)輸入數(shù)值:) )例:用一例:用一M M文件接受鍵盤輸入的數(shù)據(jù)并求其平方值。文件接受鍵盤輸入的數(shù)據(jù)并求其平方值。%This program is for square%This program is for squaren=input(enter a number)n=input(enter a number)n n* *n n(2 2)鍵盤控制命令)鍵盤控制命令 格式:格式:keyboardkeyboard 說明:程
18、序在此處暫停執(zhí)行,用戶可輸入說明:程序在此處暫停執(zhí)行,用戶可輸入 多行命令,最后輸入多行命令,最后輸入returnreturn返回返回十八、十八、 常用的人機(jī)交互命令常用的人機(jī)交互命令(3 3)暫停命令)暫停命令 格式:格式:pause %pause %暫停,直到按任意鍵暫停,直到按任意鍵 pause(n) %pause(n) %暫停暫停n n秒秒(4 4)命令顯示控制語句)命令顯示控制語句 格式:格式:echo on(off)echo on(off) 說明:控制是否在屏幕上顯示程序內(nèi)容。說明:控制是否在屏幕上顯示程序內(nèi)容。(5 5)按鍵控制命令)按鍵控制命令 格式:格式:waitforbuttonpresswaitforbuttonpress 說明:暫停,直至用戶按鼠標(biāo)鍵或鍵盤鍵。說明:暫停,直至用戶按鼠標(biāo)鍵或鍵盤鍵。(6) (6) 輸入菜單
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 油輪船員考試:油輪船員考試必看題庫知識(shí)點(diǎn)
- Photoshop平面設(shè)計(jì)基礎(chǔ) 課件 任務(wù)2.1 改變小鳥顏色
- 英語趣味三字經(jīng)
- 英語教學(xué)案例分析10篇
- 產(chǎn)業(yè)園區(qū)配套服務(wù)廠房出租居間費(fèi)合同范本
- 保健按摩師勞動(dòng)合同書美容
- 草捆生物質(zhì)能源項(xiàng)目融資合同
- 農(nóng)村現(xiàn)場(chǎng)勘察方案模板
- 智能家居產(chǎn)業(yè)廠房租賃居間合同范本
- 師徒制建設(shè)方案
- 2025年技術(shù)玻璃制品行業(yè)市場(chǎng)調(diào)研報(bào)告
- 2025至2030高純氯化鉀行業(yè)產(chǎn)業(yè)運(yùn)行態(tài)勢(shì)及投資規(guī)劃深度研究報(bào)告
- 2025年吉林省中考數(shù)學(xué)試卷真題(含答案詳解)
- 2025年中國自由鍛件行業(yè)發(fā)展運(yùn)行現(xiàn)狀及投資潛力預(yù)測(cè)報(bào)告
- 醫(yī)學(xué)美容技術(shù)專業(yè)教學(xué)標(biāo)準(zhǔn)(高等職業(yè)教育??疲?025修訂
- QGDW11970.7-2023輸變電工程水土保持技術(shù)規(guī)程第7部分水土保持設(shè)施質(zhì)量檢驗(yàn)及評(píng)定
- 變電站創(chuàng)優(yōu)工程匯報(bào)
- DB62T 4134-2020 高速公路服務(wù)區(qū)設(shè)計(jì)規(guī)范
- T/CACE 0129-2024竹編安全帽
- 2025全國農(nóng)業(yè)(水產(chǎn))行業(yè)職業(yè)技能大賽(水生物病害防治員)選拔賽試題庫(含答案)
- 谷歌付費(fèi)協(xié)議書
評(píng)論
0/150
提交評(píng)論