版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、桂林電子科技大學(xué)數(shù)學(xué)與計算科學(xué)學(xué)院實驗報告院(系) 課程 名稱數(shù)學(xué)與計算科學(xué) 數(shù)學(xué)應(yīng)用軟件實驗學(xué)號實驗項目 名 稱姓名實驗三 MATLAB的程序設(shè)計2.,實驗?zāi)康?. 掌握建立與編輯函數(shù)文件和腳本文件的方法;2. 掌握MATLAB編程語言的基本控制語句;3. 掌握MATLAB程序的調(diào)試。二,實驗原理if 語句、 switch 語句、forMATLAB有三種基本程序結(jié)構(gòu):順序、選擇和循環(huán)。主要的語句有 循環(huán)語句和while循環(huán)。1.選擇結(jié)構(gòu)(1) if語句:if條件表達式執(zhí)行語句elseif條件表達式執(zhí)行語句endswitch語句 switch表達式 case表達式 執(zhí)行語句 case表達式 執(zhí)
2、行語句otherwise執(zhí)行語句end循環(huán)結(jié)構(gòu)(1) for循環(huán)for循環(huán)變量=表達式執(zhí)行語句end其中表達式是一個矩陣,矩陣的列被一個一個的賦給循環(huán)變量,然后執(zhí)行循環(huán)體內(nèi)的語句。while循環(huán)while條件表達式執(zhí)行語句End3.其它流程控制函數(shù)for循環(huán)和while循環(huán),用于結(jié)束當(dāng)次continue語句與if語句相結(jié)合,當(dāng)滿continue : continue語句通常用在循環(huán)控制中,包括 循環(huán),繼續(xù)執(zhí)行下一次循環(huán),但是不結(jié)束當(dāng)前循環(huán)。一般 足一定的條件時,執(zhí)行continue語句。break:與continue相同的是,break函數(shù)也是用于循環(huán)控制,中斷當(dāng)前循環(huán)。與continue不同
3、,break跳出當(dāng)前循環(huán),不再執(zhí)行該循環(huán)的任何操作。return :結(jié)束該程序的執(zhí)行,返回到調(diào)用函數(shù)或者鍵盤。4.創(chuàng)建M文件M文件以.m為擴展名,它有兩種形式:腳本文件和函數(shù)文件。(1)腳本文件的創(chuàng)建進入MATLAB命令窗口后,選擇“File”下拉菜單中的“new”選擇“ M-file ”,或在MATLAB 命令窗口輸入“ edit M文件名”,或點擊工具欄中的“新建”按鈕。在M文件編輯窗口中,寫入符合語法規(guī)則的。編寫完命令文件后,選擇“file ”下拉式菜單中的“ save”項,然后依提示輸入一個文件名。至此,完成了腳本文件的創(chuàng)建。(2)函數(shù)文件的創(chuàng)建函數(shù)文件的創(chuàng)建與腳本文件的創(chuàng)建方法完全一
4、樣,只是在函數(shù)文件的第一句可執(zhí)行語句必 須是function引導(dǎo)的定義語句,并且輸入文件名時要與定義語句中的函數(shù)名相同。(3)腳本文件與函數(shù)文件的調(diào)用創(chuàng)建了腳本文件后,只在命令窗口鍵入腳本文件名,再按回車鍵,就可以執(zhí)行腳本文件中 所包含的所有命令。函數(shù)文件一旦創(chuàng)建,就可以與其它的MATLAB函數(shù)一樣調(diào)用了。5. 程序的調(diào)試在程序調(diào)試時,程序運行中變量的值為一個重要的線索。因此,查看變量值為程序調(diào)試的 重要線索,由于在函數(shù)調(diào)用時只返回最后的輸出參數(shù),而不返回中間變量,因此,可以選擇下 面的方法查看程序運行中的變量值。;)刪除,將結(jié)果顯示在命令窗口中,與(1)通過分析后,將可能出錯的語句后面的分號
5、( 預(yù)期值進行比較;當(dāng)MATLAB執(zhí)行至此處時將暫停,等待用 k>>提示符,用戶可以查看工作區(qū)中的變量,(2)利用函數(shù) disp顯示中間變量的值;(3) 在程序中的適當(dāng)位置添加keyboard指令。戶反應(yīng)。當(dāng)程序運行至此時將暫停,在命令窗口中顯示可以改變變量的值。輸入return指定返回程序,繼續(xù)運行。(4)在調(diào)試一個單獨的函數(shù)時,可以將函數(shù)改寫為腳本文件,此時可以直接對輸入?yún)?shù)賦值,然后以腳本方式運行該M文件,這樣可以保存中間變量,在運行完成后,可以查看中間變量的值,對結(jié)果進行分析,查找錯誤所在。1三,實驗內(nèi)容1.分別用腳本文件和函數(shù)文件實現(xiàn)以下功能:輸入?yún)?shù)a,b,c,畫出函數(shù)
6、y = ax2+bx+c的圖像;x + 1,x v02.編程實現(xiàn):輸入x的值,計算函數(shù)f (x)的函數(shù)值,其中f(x) =1,1<xc1,并計算x2,x31f (-0.7), f (0.5), f (1.5)3.編寫一個函數(shù) mylog(n,x)來計算實數(shù)x的對數(shù),其中,當(dāng) n取10,計算以10為底的對數(shù);當(dāng)n 取2時,計算以2為底的對數(shù),當(dāng)n取3時,計算以自然底數(shù)為底的對數(shù),當(dāng)n取其它數(shù)時候,用換底公式進行計算。4.編程實現(xiàn)求和:s(n) =1-2+3-4+.+(-1)nFns(n) =1 -丄+ 丄一丄 +. +(-1)n 出丄234n5.計算和式S(n)=1!+2! + .+ n!
7、,當(dāng)和大于1000時,退出;6. 計算組合數(shù)八施 十:匚,用遞歸實現(xiàn);7,計算以下和式,并估計其求和公式以及驗證:nS(n) =2 k =1 +2+3+.+ nk inS(n) =2 k2 =12 +22 +32 +. + n2k inS(n) =5: k3 =13 +23 +33 +.+ n3k =18,估計以下級數(shù)的和,并編程驗證。處 11111s =送 一=+.+ + k#k!1!2!3!n!s=h =丄+丄+丄+.+: + kk(k +1)1咒2 2 咒3 3天4nx(n+1)2k-13 5 7 2k-19,畫一個國際象棋的棋盤;10,給N個人編上號:1,2,3,., N,按順序圍成一
8、個圈坐好,從1號開始報數(shù),報到 M (M C N)的人退出,下一個人再從 1開始往下報數(shù),重復(fù)這個過程,請問最后剩下的那個人的號數(shù)是多少?請編程實現(xiàn),并取 N =10, M =3進行驗證;11,求出1 N之間的所有素數(shù);12,求出所有的水仙花數(shù)(所謂水仙花數(shù),是滿足以下條件的三位數(shù):各位數(shù)的立方之和等于它本身,例如,13 +53 +33 =153);13,14,15,16,將一個正整數(shù)進行質(zhì)因數(shù)分解,例如:90 = 2*3*3*5 ;求兩個正整數(shù) m, n的最小公倍數(shù)和最大公因數(shù);有一個已排好序的數(shù)組,現(xiàn)在輸入一個數(shù),請按照原來的規(guī)律將此數(shù)插入到數(shù)組中; 將一個數(shù)組逆序輸出;四,實驗結(jié)果分析或
9、總結(jié)1.分別用腳本文件和函數(shù)文件實現(xiàn)以下功能:輸入?yún)?shù)a,b,c,畫出函數(shù)y = ax2+bx + c的圖像;(1)M腳本文件: a=inpu t('a='); b=i np ut('b='); c=inpu t('c='); x=-5:5/1000:5; y=a.*x.A2+b.*x+c; plot(x,y) 結(jié)果輸入:>> lx11a=1b=1c=1 >>C占HLQiihr-ap IJ nioT Ivlph 追Q 劈竄 S iz 圖像:(2) M函數(shù)文件:fun ction lx12(a,b,c) x=-5:5/100
10、0:5; y=a.*x.A2+b.*x+c; plot(x,y)運行函數(shù):1x12(1,1,1)圖像:IM Finiice ilx + 1,x V 02.編程實現(xiàn):輸入x的值,計算函數(shù)f (x)的函數(shù)值,其中f(x) =1,1<XC1 ,并計算x2,x31f (-0.7), f (0.5), f (1.5)M函數(shù)文件:function y =f(x) if x<0y=x+1; elseif x<1 y=l; else y=x2 end結(jié)果:>> f(-0.7)ans =0.3000>> f(0.5) ans =1 >> f(1.5) y =
11、2.2500 ans =2.25003.編寫一個函數(shù) mylog(n,x)來計算實數(shù)x的對數(shù),其中,當(dāng) n取10,計算以10為底的對數(shù);當(dāng) n 取2時,計算以2為底的對數(shù),當(dāng)n取3時,計算以自然底數(shù)為底的對數(shù),當(dāng)n取其它數(shù)時候,用換底公式進行計算。M函數(shù)文件function y = mylog( n,x)if n=10 y=log10(x);elseif n=2y=log2(x); elseif n=3y=log(x); elsey=log(x)/log( n); end結(jié)果:>> mylog(10,5) ans =0.6990 >> mylog(2,5) ans =2
12、.3219ans =1.29254.編程實現(xiàn)求和:s(n) =1 2+3-4+.+(1)nn1111s(n) =1 +. + (1)n 屮一23 4n(1)M函數(shù)文件:fun cti on Y=s( n)Y=0;for i=1:nY=Y+(-1)A(i+i)*i; end結(jié)果測試:> s(4) ans =-2153>> s(100) fun cti onY=s( n)Y=0;for i=1:nY=Y+(-1)A(i+l)*(l/i); end結(jié)果測試:>> s(4) ans =0.58335.計算和式S(n)=1! + 2! + .+ n!,當(dāng)和大于1000時,退
13、出;fun cti onY=s( n)Y=0;a=1;for i=1:na=a*i;Y=Y+a;if Y>1000dis p('S(n)>1000, i ?3?-?-break ;end end程序測試:>> s(5) ans =S(n)>1000,退出循環(huán)ans =5913>> s(3)66.計算組合數(shù)C:n!=,用遞歸實現(xiàn);k!( n- k)!kM函數(shù)文件:fun cti onY = c(k ,n)if k<0 | n<0);error( 'k or n is smaller tha n 0,put in aga in
14、r return ;elseifk>nerror(end'k>n,put in aga in!');if k=0Y=1;elseifk=1&&n=1Y=1;elseifk<=nY=( n/k)*c(k-1, n-1);end程序測試:>> c(0,0) ans =>> c(0,1) ans =>> c(3,4) ans =7, 計算以下和式,并估計其求和公式以及驗證:nS(n) =2: k =1 +2+3+ nk ztfun cti on Y=s( n)Y=0;for k=1: nY=Y+k;end測試:an
15、s =nS(n) =2 k2 =12 +22 +32 + n2k 1S=0;fun cti onY=s( n)Y=0;for k=1: n丫=丫+"2;end測試:>> s(3) ans =14nS(n) =5: k3 =13 +23 +33 + n3k 4fun cti on Y=s( n)Y=0;for k=1: n丫=丫+"3;end測試:>> s(2) ans =8,估計以下級數(shù)的和,并編程驗證。丄+ 1 +2!3!+丄+n!1 1 1S=2 - =1心k! 1!程序:a=1;S=0;for k=1:100000a=a*k;S=S+1/a;e
16、nd dis p(S);驗證:>> s1.7183cS=z心 k(k +1)=丄+1X2233天4丄+ +nx( n+1)程序:for k=1:100000S=S+1/(k*(k+1);end dis p(S);檢驗:>> s1.0000S 語亠 3+5-7+蟲+2k-1程序:S=0;for k=1:100000S=S+(-1)A(k+1)/(2*k-1);enddis p(S);檢驗:>> s0.78549,畫一個國際象棋的棋盤;10,給N個人編上號:1,2,3,., N,按順序圍成一個圈坐好,從1號開始報數(shù),報到 M (M < N)的人退出,下一個
17、人再從 1開始往下報數(shù),重復(fù)這個過程,請問最后剩下的那個人的號數(shù)是多少?請編程實現(xiàn),并取 N =10, M =3進行驗證;M函數(shù)文件:fun cti onx,y=Jose ph0(N,M)a=1:N; t=1;k=1;while tl,k=size(a);if len gth(a)=1 dis p(a);break ; endif k<Mwhile kif len gth(a)=1 break ;endfor r=1:(M-1) c=a(1); a(1)=; a=a c;enda(1)=; k=k+1; endelse for i=1:(M-1) b(i)=a(i);end a(M)=;
18、 for j=1:(M-1) a(M-j)=;end for i=1:(M-1) a=a b(i);end t=t+1;end end驗證:>> Jose ph0(10,3)4>> Jose ph0(7,4)211,求出1 N之間的所有素數(shù);M函數(shù)文件:fun cti onout = np rimes(N)A= 1:N;A=0;i=2;while i<= floor(sqrt(N);for j= 2:fix(N/i)A(i*j) = 0;end ;i = A(fi nd(A>i,1); end ;out=non zeros(A);檢驗:>> np
19、 rimes(20)ans =231113171912,求出所有的水仙花數(shù)(所謂水仙花數(shù),是滿足以下條件的三位數(shù):各位數(shù)的立方之和等于它本身,例如,13 +53 +33 =153);程序:for i=100:999a=fix(i/100); b=fix(mod(i,100)/10);c=mod(i,10);if a3+b3+c3=idis p( i);end end結(jié)果:>> 1x1015337037190 = 2*3*3*540713,將一個正整數(shù)進行質(zhì)因數(shù)分解,例如:fun cti on c=p rimfactor(a)b=2:sqrt(a);c=;whileise mp ty
20、(b)if mod(a,b(1)b(mod(b,b(1)=;con ti nue ;elsec=c,b(1);a=a/b(1); b(b>sqrt(a)=; endend dis p('該正整數(shù)的質(zhì)因數(shù)為: '); c=c,a;測試:P rimfactor(90)該正整數(shù)的質(zhì)因數(shù)為:ans =14,求兩個正整數(shù) m, n的最小公倍數(shù)和最大公因數(shù);M函數(shù)文件:function M,N=gcmlcm(m, n)t=mi n(m,n);while tif mod(m,t)=0 & mod( n, t)=0disp('m,n的最大公約數(shù):'); dis p(t);break;endt=t-1;endg=m* n/t;disp('m,n的最小公倍數(shù):');dis p(g);程序測試:gcmlcm(4,6)的最大公約數(shù):2m,nm,n的最小公倍數(shù)
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 房地產(chǎn)經(jīng)紀(jì)操作實務(wù)-《房地產(chǎn)經(jīng)紀(jì)操作實務(wù)》模擬試卷1
- 年度財務(wù)狀況及展望模板
- 《論語新解》讀書報告
- 人教版四年級數(shù)學(xué)上冊寒假作業(yè)(十六)(含答案)
- 四川省自貢市富順縣西區(qū)九年制學(xué)校(富順縣安和實驗學(xué)校)2024-2025學(xué)年上學(xué)期九年級期中考試物理試卷(含答案)
- 二零二五年度立體廣告牌匾制作與安裝協(xié)議3篇
- 二零二五年建筑工程項目管理實訓(xùn)教材編寫與出版合同3篇
- 二零二五年度高速卷簾門安裝與性能檢測合同2篇
- 二零二五年度隗凝國際貿(mào)易合同3篇
- 2024年ESG投資發(fā)展創(chuàng)新白皮書
- 17.5-博物館管理法律制度(政策與法律法規(guī)-第7版)
- 衛(wèi)健系統(tǒng)深入開展矛盾糾紛“大走訪、大排查、大化解”專項行動工作方案
- 顛茄流浸膏實驗方案及總結(jié)
- 投標(biāo)人情況表
- GB/T 34241-2017卷式聚酰胺復(fù)合反滲透膜元件
- GB/T 12494-1990食品機械專用白油
- 運輸供應(yīng)商年度評價表
- 北京語言大學(xué)保衛(wèi)處管理崗位工作人員招考聘用【共500題附答案解析】模擬試卷
- 肺癌的診治指南課件
- 人教版七年級下冊數(shù)學(xué)全冊完整版課件
- 商場裝修改造施工組織設(shè)計
評論
0/150
提交評論