MATLAB簡介及程序編寫ppt課件_第1頁
MATLAB簡介及程序編寫ppt課件_第2頁
MATLAB簡介及程序編寫ppt課件_第3頁
MATLAB簡介及程序編寫ppt課件_第4頁
MATLAB簡介及程序編寫ppt課件_第5頁
已閱讀5頁,還剩45頁未讀, 繼續免費閱讀

下載本文檔

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

文檔簡介

.,高等數學實驗,第一章MATLAB簡介,.,MATLAB簡介,一、關于MATLAB、MATLAB的特點、MATLAB工具箱及啟動二、MATLAB程序編寫、MTLAB的基本元素及使用方法、M文件及函數、程序語言的編寫三、上機實驗,.,MATLAB簡介關于MATLAB,、MATLAB的特點功能強大語言簡單擴充能力強、可開發性強編程易、效率高(從形式上看,MATLAB程序文件是一個純文本文件,擴展名為m.用任何字處理軟件都可以對它進行編寫和修改,因此程序易調試,人機交互性強。),.,、MATLAB工具箱及啟動()MATLAB工具箱:MATLAB主程序最優化工具箱(OptimizationToolbox)圖像處理工具箱(ImageProcessingToolbox)線性矩陣不等式控制工具箱(LMIControlToolbox)偏微分方程工具箱(PartialDifferentialEquationToolbox)統計工具箱(StatisticsToolbox)符號數學工具箱(SymbolicMathToolbox),MATLAB簡介關于MATLAB,.,(2)MATLAB啟動可以利用菜單、快捷鍵或文件夾三種方式進人MATLAB工作窗口。,MATLAB簡介關于MATLAB,.,MATLAB簡介MATLAB程序編寫,MTLAB的基本元素及使用方法一、MTLAB的基本元素及使用方法1、常量和變量2、字符串3、數組和矩陣的構造4、運算符5、數組和矩陣的運算,.,1常量和變量1)常量和變量的定義常量是MATLAB語言預定義的一些變量,在默認的情況下這些變量的值為常數。變量是MATLAB的基本元素之一,與其他常規程序設計語言不同的是MATLAB語言不要求對所使用的變量進行事先說明,而且它也不需要指定變量的類型,系統會根據該變量被賦予的值或是對該變量所進行的操作來自動確定變量的類型。變量的命名規則:變量名長度不超過31位,超過31位的字符系統將忽略不計;變量名區分大小寫;變量名必須以字母開頭,變量名中可以包含字母、數字或下劃線。,MATLAB簡介MATLAB程序編寫,.,2)常量和變量的運算MATLAB關于常量和變量的運算與C語言基本相同例:計算,MATLAB簡介MATLAB程序編寫,.,MATLAB簡介MATLAB程序編寫,2字符串字符和字符串也是MATLAB的重要組成部分,MATLAB具有強大的字符串處理功能,特別是在MATLAB6.5中有專門的符號運算工具箱(Symbolictoolbox)使其進行符號運算的功能更為強大。1)設定字符串MATLAB對字符串的設定非常簡單,只需用單引號,將需設定的字符串引注即可。2)字符串的操作由于MATLAB語言是采用C語言開發的,因此它的字符串操作與C語言的相應操作基本相同。在MATLAH中用eval函數來執行字符串的功能。,.,MATLAB簡介MATLAB程序編寫,3數組和矩陣的構造1)數組只要用空格或逗號間隔數組元素,并用方括號括起來就可以了。例如x=01,75注:還可以用增量法和linspace函數法來構造數組增量法構造數組。增量法構造數組例如b=10:15b=10:0.5:12b=10:-1:5lingspace函數法構造數組用lingspace函數構造數組,需要指定首尾和元素總個數,形式為x=linspace(first,last,num)例如x=linspace(0,10,5),.,MATLAB簡介MATLAB程序編寫,2)矩陣MATLAB里,二數組稱為矩陣,在方括號里輸入多個元素可以構造矩陣的一個行,并用逗號或空格將每個元素隔開,不同行用分號隔開.例如,b=015;379,.,MATLAB簡介MATLAB程序編寫,4運算符與其他程序語言類似,MATLAB提供了數學表達式功能.但是,與大多數程序語言不同的是,這些表達式主要對矩陣操作.算術運算符實現四則運算以及冪,轉置等運算,表達式采用的算術運算符如表1.1所示。,.,MATLAB簡介MATLAB程序編寫,5數組和矩陣的運算由數學知識可知,數組和矩陣有著不同的概念。在MATLAB中,數組和矩陣在形式上很多一致之處,但是實際上它們遵循不同的運算規則。,.,MATLAB簡介MATLAB程序編寫,.,MATLAB簡介MATLAB程序編寫,.,MATLAB簡介MATLAB程序編寫,二、M文件及函數1.M文件如果需要重復調用命令,或者命令的數比較多,將它們寫成M文件的形式并保存.M文件分為腳本式M文件和函數式M文件。(1)腳本式M文件例如在編輯器中輸入如下代碼a=123;0,1,0;3,4,5;b=det(a)c=inv(a)d=b*c保存為math.m在命令窗口中輸入math可以執行文件。,.,MATLAB簡介MATLAB程序編寫,(2)函數式M文件例如給出x求,在編輯器中輸入functiony=tentimes(x)%本程序求輸入值與10的乘積%用演示MATLAB函數幫助的實現方法y=x*10;將它保存到MATLAB的work目錄中,M文件名為tentimes.m,.,MATLAB簡介MATLAB程序編寫,在命令窗口輸入helptentimes顯示本程序求輸入值與10的乘積用演示MATLAB函數幫助的實現方法輸入y=tentimes(10)得到返回值y=100,.,MATLAB簡介MATLAB程序編寫,注:比較好的編程習慣,往往在程序的開始部分寫一些文本,提供關于怎么使用函數的幫助信息.緊接函數定義行的以%符號開頭的第一組連續行是函數的幫助文本.,.,MATLAB簡介MATLAB程序編寫,2.函數MATLAB提供了很多內部數學函數,包括abs,sqrt,exp和sin.對負數取平方根或對數不會導致錯誤,MATLAB會自動返回復數計算結果.MATLAB還提供了很多高級的數學函數,包括bessel和gamma函數,在命令窗口入下面的命令,可以看此類函數的列表.helpelfun輸入以下的命令,可以看到更多的高級數學函數和矩陣函數helpspecfunhelpelmat,.,MATLAB簡介MATLAB程序編寫,注:(1)任意M文件中的第1個函數稱為主函數.主函數可以有任意多個子函數,它們可以作為主函數的子函數.(2)大多數情況下,主函數是M文件中可以從MATLAB命令或從另一個M文件函數調用的唯一函數.調用該函數時,使用定義該函數的M文件的名稱.例如,average函數在文件average.m中.functiony=average(x)%計算矢量元素的平均值y=sum(x)/length(x);可以從MATLAB命令行用下面的命令計算3個數的平均值average(252)ans=3,.,MATLAB簡介MATLAB程序編寫,注意:一般使主函數的名稱與M文件的相同.如果函數名與文件名不同,必須用文件名調用函數.M文件中可以包含一個以上的函數.文件中除主函數以外的函數稱為子函數,主函數放在最上面,子函數放在下面,各子函數不分先后順序.,.,MATLAB簡介MATLAB程序編寫,三、程序語言的編寫程序控制語句決定程序運行時的走向,包括條件控制,循環控制,錯誤控制和終止運行控制等,這里介紹條件控制和循環控制.,.,MATLAB簡介MATLAB程序編寫,1條件控制條件控制使得可以有選擇地運行程序塊.當條件可以用是或否來回答時,使用if語句;當條件根據表達式值的不同可有多個選項時,使用switch和case語句.(1)if語句在MATLAB中,if語句有3種格式。(1)單分支if語句:if條件語句組end當條件成立時,則執行語句組,執行完之后繼續執行if語句的后繼語句,若條件不成立,則直接執行if語句的后繼語句。,.,MATLAB簡介MATLAB程序編寫,例如:當輸入自變量的值,由如下分段函數給出的值,.,MATLAB簡介MATLAB程序編寫,編輯M文件math.m:x=input(x=);ifxmathx=1x=1y=3,.,MATLAB簡介MATLAB程序編寫,(2)雙分支if語句:if條件語句組1else語句組2end當條件成立時,執行語句組1,否則執行語句組2,語句組1或語句組2執行后,再執行if語句的后繼語句。,.,MATLAB簡介MATLAB程序編寫,例3-4計算分段函數的值。程序如下:x=input(請輸入x的值:);ifx=Aend,.,MATLAB簡介MATLAB程序編寫,有多個選擇時,可以類似地使用if/elseif語句.例如B樣條函數的判斷函數程序如下:functionf=pdbsline(x)ifx0f=0;elseifxpdbsline(-1)ans=0pdbsline(1.36)ans=0.6400pdbsline(2.5)ans=0pdbsline(1)ans=1,.,MATLAB簡介MATLAB程序編寫,(2)switch/case語句該語句的通用格式為:switchswitch-expressioncasecase-expression1,statements1;casecase-expression2,statements2;casecase-expression3,statements3;otherwisestatements;end,.,MATLAB簡介MATLAB程序編寫,switch-expression給出開關條件,當有case-expression與之匹配時,就執行其后的語句.如果沒有case-expression與之匹配,就執行otherwise后面的語句.在執行過程中,只有一個case命令被執行,當執行完命令后,程序就跳出分支結構,執行end下面的語句.,.,MATLAB簡介MATLAB程序編寫,例如:編寫轉換成績等級的函數文件,考試成績在80,100分數段的顯示優秀,在70,80)分數段顯示良好,60,70)分數段顯示及格,0,60)分數段顯示不及格.,程序如下:functionresult=cj(x)n=fix(x/10);switchncase8,9,10disp(優秀);case7disp(良好);case6disp(及格);otherwisedisp(不及格);end,.,MATLAB簡介MATLAB程序編寫,保存為cj.m,在命令窗口輸入:cj(98)優秀cj(80)優秀cj(67)及格cj(23)不及格,.,MATLAB簡介MATLAB程序編寫,2循環控制使用循環控制語句,可以重復執行代碼塊,用for語句執行指定次數;while語句適合于循環一直執行,直到滿足條件為止的情況;continue和break語句對退出循環給予更多控制.(1)for循環for循環允許一組命令以固定的和預定的次數重復執行,for循環的一般形式如下:forv=expression(循環變量=初值:步長:終值)statements;end,.,MATLAB簡介MATLAB程序編寫,2循環結構1)for語句for語句的格式為:for循環變量=表達式1:表達式2:表達式3循環體語句end其中表達式1的值為循環變量的初值,表達式2的值為步長,表達式3的值為循環變量的終值。步長為1時,表達式2可以省略。,.,MATLAB簡介MATLAB程序編寫,.,MATLAB簡介MATLAB程序編寫,例3-9已知,當n=100時,求y的值。程序如下:y=0;n=100;fori=1:ny=y+1/(2*i-1);endy,.,MATLAB簡介MATLAB程序編寫,在實際MATLAB編程中,采用循環語句會降低其執行速度,所以前面的程序通常由下面的程序來代替:n=100;i=1:2:2*n-1;y=sum(1./i);y,.,MATLAB簡介MATLAB程序編寫,(2)while語句while語句的一般格式為:while(條件)循環體語句end其執行過程為:若條件成立,則執行循環體語句,執行后再判斷條件是否成立,如果不成立則跳出循環。,.,MATLAB簡介MATLAB程序編寫,例如:求自然數前項n和,輸入項數n程序如下:n=input(n=)sum=0;k=1;%給和與循環變量賦初值whilek=nsum=sum+k;k=k+1;endsum執行程序:輸入10,回車得n=10sum=55,.,MATLAB簡介MATLAB程序編寫,(3)continue命令continue命令經常與for或while語句一起使用,作用是結束本次循環,即跳過循環體中下面尚未執行的語句,接著下一次是否執行循環的判斷.(4)break命令break命令經常與for或while語句一起使用,作用是終止本次循環,跳出最內層的循環.,.,MATLAB簡介MATLAB程序編寫,(3)continue命令continue命令經常與for或while語句一起使用,作用是結束本次循環,即跳過循環體中下面尚未執行的語句,接著下一次是否執行循環的

溫馨提示

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

評論

0/150

提交評論