版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、重要通知第三次課為教材第1-3章的課堂作業(yè),占總成績的20%。望大家提前預(yù)習(xí),將書上例題全部學(xué)習(xí)一遍,方可做好課堂作業(yè)。周末實驗室開放,有數(shù)學(xué)建模國賽隊員輔導(dǎo),望大家前往學(xué)習(xí)。實驗二目的正確區(qū)分命令文件和函數(shù)文件的區(qū)別,掌握函數(shù)文件的組成,函數(shù)調(diào)用等掌握程序結(jié)構(gòu)組成,循環(huán)結(jié)構(gòu),選擇結(jié)構(gòu)掌握Matlab 符號運算 所謂M文件就是由MATLAB語言編寫的可在MATLAB語言環(huán)境下運行程序源代碼文件。 M文件可以根據(jù)調(diào)用方式的不同分為兩類: 命令文件(Script File):自動重復(fù)執(zhí)行的一組MATLAB命令和函數(shù)組合,不需輸出輸入?yún)?shù)。 函數(shù)文件(Function File):M文件的第一個可執(zhí)
2、行以function開始,便是函數(shù)文件,每一個函數(shù)文件定義一個函數(shù)。 2.1.1 M文件1. M文件概述2.1 MATLAB語言的流程結(jié)構(gòu)function output,output2=function-name(input1,input2) 2. M 文件的建立與打開 M文件是一個文本文件,擴(kuò)展名為“m”,可以用任何文本編輯器來建立和編輯,通常使用 Matlab 自帶的 M 文件編輯器。(1)新建一個 M 文件方法一 菜單操作 ( File New M-File )方法二 命令操作 ( edit M 文件名 )方法三 快捷欄按鈕(2) 打開已有的 M 文件方法一 菜單操作 ( File Op
3、en )方法二 命令操作 ( edit M文件名 )方法三 快捷欄按鈕方法四 雙擊 M 文件 3. M 文件的運行(1)從命令窗口 輸入文件名即可運行。(2)從編輯器窗口方法一 在編輯器菜單Debug-save and run方法二 快捷欄按鈕方法三 快捷鍵F5注1 命令文件產(chǎn)生的變量是全局變量,函數(shù)文件內(nèi)部的變量(非輸入?yún)?shù))是局部變量。注2 運行若出現(xiàn)死循環(huán)或其它需要中斷程序運行:1. 命令窗口使用組合鍵ctrl+c。2. 組合鍵ctrl+alt+del調(diào)出任務(wù)管理器,結(jié)束matlab進(jìn)程。例2.1.1 分別建立命令文件和函數(shù)文件,將華氏溫度f轉(zhuǎn)換為攝氏溫度c。命令文件建立: (以文件名f
4、2c.m存盤) clear; %清除工作空間中的變量f=input(temperature:);c=5*(f-32)/9 f2cInput Fahrenheit temperature:73c = 22.7778命令窗口輸入:函數(shù)文件建立:以文件名f2c_fun.m存盤function c=f2c_fun(f)c=5*(f-32)/9; c=f2c_fun(20)c = -6.6667命令窗口輸入:注1:函數(shù)調(diào)用的一般格式是: 輸出實參表=函數(shù)名(輸入實參表)實參傳遞給形參例2.1.2 編寫函數(shù)文件求半徑為r的圓的面積和周長。 函數(shù)文件如下: function s,p=fcircle(r) %
5、r 圓半徑%s 圓面%p 圓周長s=pi*r*r;p=2*pi*r;2.2 程序控制結(jié)構(gòu) 程序控制結(jié)構(gòu)有三種:順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。任何復(fù)雜的程序都由這三種基本結(jié)構(gòu)組成。2.2.1 順序結(jié)構(gòu) 按排列順序依次執(zhí)行各條語句,直到程序的最后。 這是最簡單的一種程序結(jié)構(gòu),一般涉及數(shù)據(jù)的輸入輸出、數(shù)據(jù)的計算或處理等。1. 數(shù)據(jù)的輸入 從鍵盤輸入數(shù)據(jù): A=input(提示信息,s);加上s選項,則允許用戶輸入一個字符串。 xm=input(Whats your name?,s);Whats your name?張三2. 數(shù)據(jù)的輸出disp(輸出項)其中輸出項既可以為字符串,也可以為矩陣。例2.2
6、.1 輸入x,y的值,并將它們的值互換后輸出。 x=input(Input x please:);y=input(Input y please:);z=x;x=y;y=z;disp(x);disp(y);Input x please:1Input y please:2 2 1例2.2.2 求一元二次方程ax2 +bx+c=0的根。 a=input(a=?);b=input(b=?); c=input(c=?); d=b*b-4*a*c; x=(-b+sqrt(d)/(2*a),(-b-sqrt(d)/(2*a);disp(x1=,num2str(x(1),x2=, num2str(x(2);a
7、=?1b=?3c=?2x1=-1,x2=-23. 程序的暫停pause(延遲秒數(shù))如果省略延遲時間,直接使用 pause,則將暫停程序,直到用戶按任一鍵后程序繼續(xù)執(zhí)行。2.2.2 選擇結(jié)構(gòu) 選擇結(jié)構(gòu)是根據(jù)給定的條件成立或不成立,分別執(zhí)行不同的語句。 MATLAB 用于實現(xiàn)選擇結(jié)構(gòu)的語句有 if 語句和 switch 語句。1. if語句 在MATLAB中,if語句有單分支,雙分支,多分枝3種格式。if 條件 語句組end當(dāng)條件1成立時,執(zhí)行語句組1,否則,當(dāng)條件2成立,執(zhí)行語句組2,否則,,否則,當(dāng)條件m成立,執(zhí)行語句組m,否則執(zhí)行語句組n,之后繼續(xù)執(zhí)行 if 語句的后繼語句,若條件不成立,則
8、直接執(zhí)行if語句的后繼語句。if 條件語句組1else語句組2endif 條件1 語句組1elseif 條件2 語句組2elseif 條件m 語句組melse 語句組nend例2.2.3 計算分段函數(shù)的值。 x=input(請輸入x的值:); if x c=input(請輸入一個字符,s); if c=A & c=a& c=0& c=9 disp(abs(c)-abs(0); else disp(c); end2. switch語句switch 表達(dá)式 %計算表達(dá)式的值 case 表達(dá)式1 %等于表達(dá)式1的值時,執(zhí)行語句組1 語句組1 case 表達(dá)式2 %等于表達(dá)式1的值時,執(zhí)行語句組2 語
9、句組2 case 表達(dá)式m %等于表達(dá)式m的值時,執(zhí)行語句組m 語句組m otherwise %不為上述值時,執(zhí)行語句組n 語句組n end %當(dāng)任意一個分支的語句執(zhí)行完后,直接執(zhí)行switch語句的下一句。例2.2.5 某商場對顧客所購買的商品實行打折銷售,標(biāo)準(zhǔn)如下(商品價格用price來表示): price200 沒有折扣 200price500 3%折扣 500price1000 5%折扣 1000price2500 8%折扣 2500price price=input(請輸入商品價格);switch fix(price/100) case 0,1 %價格小于200 rate=0; ca
10、se 2,3,4 %價格大于等于200但小于500 rate=3/100; case num2cell(5:9) %價格大于等于500但小于1000 rate=5/100; case num2cell(10:24) %價格大于等于1000但小于2500 rate=8/100; case num2cell(25:49) %價格大于等于2500但小于5000 rate=10/100; otherwise %價格大于等于5000 rate=14/100;endprice=price*(1-rate) %輸出商品實際銷售價格2.2.3 循環(huán)結(jié)構(gòu) 循環(huán)結(jié)構(gòu)是按照給定的條件,重復(fù)執(zhí)行指定的語句。 MATL
11、AB 用于實現(xiàn)循環(huán)結(jié)構(gòu)的語句有 for 語句和 while 語句。1. for語句 for 循環(huán)變量=表達(dá)式1:表達(dá)式2:表達(dá)式3循環(huán)體語句end 其中表達(dá)式 1 的值為循環(huán)變量的初值,表達(dá)式2的值為步長,表達(dá)式3的值為循環(huán)變量的終值。步長為1時,表達(dá)式2可以省略。for 循環(huán)變量=矩陣表達(dá)式循環(huán)體語句end 執(zhí)行過程是依次將矩陣的各列元素賦給循環(huán)變量,然后執(zhí)行循環(huán)體語句,直至各列元素處理完畢。例2.2.6 已知 ,當(dāng)n=100時,求y的值。 y=0; n=100; for i=1:n y=y+1/(2*i-1); end y例2.2.7 寫出下列程序的執(zhí)行結(jié)果。 s=0; a=12,13,1
12、4;15,16,17;18,19,20;21,22,23; for k=a s=s+k; end disp(s);2. while語句 while語句的一般格式為: while (條件) 循環(huán)體語句 end 其執(zhí)行過程為:若條件成立,則執(zhí)行循環(huán)體語句,執(zhí)行后再判斷條件是否成立,如果不成立則跳出循環(huán)。例2.2.8 從鍵盤輸入若干個數(shù),當(dāng)輸入0時結(jié)束輸入,求這些數(shù)的平均值和它們之和。 sum=0;cnt=0;val=input(Enter a number (end in 0):);while (val=0) sum=sum+val; cnt=cnt+1; val=input(Enter a nu
13、mber (end in 0):);endif (cnt 0) sum mean=sum/cntend3. break語句和continue語句 與循環(huán)結(jié)構(gòu)相關(guān)的語句還有 break 語句和 continue語句。 它們一般與if語句配合使用。 break 語句用于終止循環(huán)的執(zhí)行。當(dāng)在循環(huán)體內(nèi)執(zhí)行到該語句時,程序?qū)⑻鲅h(huán),繼續(xù)執(zhí)行循環(huán)語句的下一語句。 continue 語句控制跳過循環(huán)體中的某些語句。當(dāng)在循環(huán)體內(nèi)執(zhí)行到該語句時,程序?qū)⑻^循環(huán)體中所有剩下的語句,繼續(xù)下一次循環(huán)。例2.2.9 求100,200之間第一個能被21整除的整數(shù)。 for n=100:200 if rem(n,21)=
14、0 continue end break end n4. 循環(huán)的嵌套 如果一個循環(huán)結(jié)構(gòu)的循環(huán)體又包括一個循環(huán)結(jié)構(gòu),就稱為循環(huán)的嵌套,或稱為多重循環(huán)結(jié)構(gòu)。例2.2.10 若一個數(shù)等于它的各個真因子之和,則稱該數(shù)為完數(shù),如6=1+2+3,所以6是完數(shù)。求 1,500之間的全部完數(shù)。 for m=1:500 s=0; for k=1:m/2 if rem(m,k)=0 s=s+k; end end if m=s disp(m); end end MathWorks公司在1993年收購了主要針對符號計算的MAPLIE V 軟件的使用,以MAPLIE內(nèi)核為符號計算的引擎,開發(fā)了符號數(shù)學(xué)工具箱( Symb
15、olic Math Toolbox )。 MAPLIE占據(jù)符號軟件的主導(dǎo)地位,符號運算工具包通過調(diào)用Maple軟件實現(xiàn)符號計算的。 在符號計算中,參與運算的是符號變量而不是數(shù)值,使用字符串進(jìn)行分析。數(shù)值運算中必須先對變量賦值,然后才能參與運算。符號運算無須事先對獨立變量賦值,運算結(jié)果以標(biāo)準(zhǔn)的符號形式表達(dá),可以獲得任意精度的解。2.3 MATLAB符號計算工具箱2.3.1 建立符號對象1. 建立符號變量和符號常量 創(chuàng)建一個符號變量x,可以是字符、字符串、表達(dá)式或字符表達(dá)式。 x=sym(符號字符串) syms var1 var2 varn函數(shù)定義符號變量var1,var2,varn注1 sym定
16、義符號變量一次只能定義一個。注2 var1varn之間用空格隔開2.3.2 建立符號表達(dá)式及符號矩陣?yán)?.3.1 用2種方法建立符號表達(dá)式。方法一 利用單引號來生成符號表達(dá)式方法二 用sym函數(shù)建立符號表達(dá)式方法三 使用已經(jīng)定義的符號變量組成符號表達(dá)式 U=sym(3*x2+5*y+2*x*y+6) %定義符號表達(dá)式Usyms x y; %建立符號變量x、yV=3*x2+5*y+2*x*y+6 %定義符號表達(dá)式V2*U-V+6 %求符號表達(dá)式的值例2.3.2 構(gòu)造符號矩陣。 S=sym(l,x,y,z;n,u,v,w;a,b,c,d;g,h,j,p) S = l, x, y, z n, u,
17、v, w a, b, c, d g, h, j, p H=sym(cos(t), -sin(t); sin(t), cos(t) H= cos(t), -sin(t) sin(t), cos(t)2.3.3 符號表達(dá)式運算例2.3.3 求兩個符號表達(dá)式的和與差。 syms x fx gx % 定義符號變量 fx = 2*x2+3*x-5 fx = 2*x2+3*x-5 gx= x2-x+7; fx+gx ans= 3*x2+2*x+2 fx-gx ans= x2+4*x-12 syms a b c d e f g h; A = a b; c d; B = e f; g h; C1 = A.*B
18、 C1 = a*e, b*f c*g, d*h C2 = A*B/A C2 = (d*a*e+d*b*g-c*a*f-c*b*h)/(d*a-c*b), -(b*a*e+b2*g-a2*f-b*h*a)/(d*a-c*b) (d2*g+d*c*e-c2*f-c*d*h)/(d*a-c*b), -(d*b*g+b*c*e-c*a*f-d*h*a)/(d*a-c*b) 例 2.3.4 符號矩陣與數(shù)組的乘除示例。2.4 獨立變量與表達(dá)式化簡 2.4.1 符號表達(dá)式中變量的確定MATLAB中的符號可以表示符號變量和符號常數(shù)。findsym可以幫助用戶查找一個符號表達(dá)式中的符號變量。該函數(shù)的調(diào)用格式為:findsym(S,n) 函數(shù)返回符號表達(dá)式S中的n個符號變量,若沒有指定n,則返回S中的全部符號變量。在求函數(shù)的極限、導(dǎo)數(shù)和積分時,如果用戶沒有明確指定自變量,MATLAB將按缺省原則確定主變量并
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 課件標(biāo)題模板教學(xué)課件
- 南京工業(yè)大學(xué)浦江學(xué)院《食品添加劑》2022-2023學(xué)年第一學(xué)期期末試卷
- 都江堰某希望小學(xué)教學(xué)樓及綜合樓施工組織設(shè)計
- jqx第課時說課稿
- 南京工業(yè)大學(xué)浦江學(xué)院《金庸小說欣賞》2021-2022學(xué)年第一學(xué)期期末試卷
- 《小小旅行家》說課稿
- 南京工業(yè)大學(xué)《自動化》2022-2023學(xué)年第一學(xué)期期末試卷
- 南京工業(yè)大學(xué)《藥物商品學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 南京工業(yè)大學(xué)《水工程施工》2022-2023學(xué)年第一學(xué)期期末試卷
- 南京工業(yè)大學(xué)《企業(yè)戰(zhàn)略管理》2022-2023學(xué)年第一學(xué)期期末試卷
- 電工基礎(chǔ)知識培訓(xùn)課程
- 廣東省2024-2025學(xué)年高三上學(xué)期10月份聯(lián)考?xì)v史試卷 - 副本
- 工會采購管理制度
- 統(tǒng)編版六年級語文上冊《字音辨析》專項測試題帶答案
- module-5劍橋BEC商務(wù)英語-中級-課件-答案-詞匯講課教案
- 專題03立體幾何中的動點問題和最值問題(原卷版+解析)
- 中圖版2024-2025學(xué)年八年級地理上冊期中卷含答案
- 農(nóng)業(yè)機(jī)械化在農(nóng)業(yè)機(jī)械化作業(yè)中的應(yīng)用考核試卷
- 國開2024年秋《教育心理學(xué)》形成性考核1-4答案
- 噴漆安全管理制度
- 2024教師職業(yè)個人三年發(fā)展規(guī)劃
評論
0/150
提交評論