Matlab編程和應(yīng)用習(xí)題及一些參考答案與解析_第1頁
Matlab編程和應(yīng)用習(xí)題及一些參考答案與解析_第2頁
Matlab編程和應(yīng)用習(xí)題及一些參考答案與解析_第3頁
Matlab編程和應(yīng)用習(xí)題及一些參考答案與解析_第4頁
Matlab編程和應(yīng)用習(xí)題及一些參考答案與解析_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

...wd......wd......wd...Matlab上機(jī)實驗一、二安裝Matlab軟件。驗證所學(xué)內(nèi)容和教材上的例子。3.求以下聯(lián)立方程的解>>a=[34-7-12;5-742;108-5;-65-210];>>b=[4;4;9;4];>>c=a\bc=5.22264.45701.47181.59944.設(shè),,求C1=A*B’;C2=A’*B;C3=A.*B,并求上述所有方陣的逆陣。>>A=[14813;-36-5-9;2-7-12-8];>>B=[543-2;6-23-8;-13-97];>>C1=A*B'C1=19-823012273-385429>>C2=A'*BC2=-1516-243663-1793-105226117-60194684-10>>C3=A.*BC3=51624-26-18-12-1572-2-21108-56>>inv(C1)ans=0.00620.0400-0.0106-0.00460.01690.00300.01680.02090.0150>>inv(C2)Warning:Matrixisclosetosingularorbadlyscaled.Resultsmaybeinaccurate.RCOND=8.997019e-019.ans=1.0e+015*-0.9553-0.2391-0.19970.27000.96670.24200.20xx-0.2732-0.4473-0.1120-0.09350.1264-1.1259-0.2818-0.23530.3182>>inv(C3)???Errorusing==>invMatrixmustbesquare.5.設(shè),把x=0~2π間分為101點,畫出以x為橫坐標(biāo),y為縱坐標(biāo)的曲線。>>x=linspace(0,2*pi,101);>>y=cos(x)*(0.5+(1+x.^2)\3*sin(x));>>plot(x,y,'r')6.產(chǎn)生8×6階的正態(tài)分布隨機(jī)數(shù)矩陣R1,求其各列的平均值和均方差。并求該矩陣全體數(shù)的平均值和均方差?!瞞eanvar〕a=randn(8,6)mean(a)var(a)k=mean(a)k1=mean(k)i=ones(8,6)i1=i*k1i2=a-i1i3=i2.*i2g=mean(i3)g2=mean(g)或者u=reshape(a,1,48);p1=mean(u)p2=var(u)7.設(shè)x=rcost+3t,y=rsint+3,分別令r=2,3,4,畫出參數(shù)t=0~10區(qū)間生成的x~y曲線。>>t=linspace(0,10);>>r1=2;>>x1=(r1*cos(t)+3*t);>>y1=r1*sin(t)+3;>>r2=3;>>x2=(r2*cos(t)+3*t);>>y2=r2*sin(t)+3;>>r3=4;>>x3=(r3*cos(t)+3*t);>>y3=r3*sin(t)+3;>>plot(x1,y1,'r',x2,y2,'b',x3,y3,'m')8.設(shè)f(x)=x5-4x4+3x2-2x+6(1)在x=[-2,8]之間取100個點,畫出曲線,看它有幾個過零點?!蔡崾荆河胮olyval函數(shù)〕>>x=linspace(2,8,100);>>y=polyval([10-43-26],x);>>plot(x,y,'b',x,0,'y')(2)用roots函數(shù)求此多項式的根。t=[10-43-26]p=roots(t)9.建設(shè)一個字符串向量,然后對該向量做如下處理:

(1)取第1~5個字符組成的子字符串。(2)將字符串倒過來重新排列。(3)統(tǒng)計字符串中小寫字母的個數(shù)。10.利用幫助查找limit函數(shù)的用法,并自己編寫,驗證幾個函數(shù)極限的例子。Matlab上機(jī)實驗二1.驗證所授課程的課件。2.設(shè)x=sint,y=sin(nt+a),假設(shè)a=1,令n=1,2,3,4,在四個子圖中分別畫出其曲線。假設(shè)n=2,取a=0,π/3,π/2,及π,在四個子圖中分別畫出其曲線。(1)a=1;x=sin(t);y1=sin(1*t+a);y2=sin(2*t+a);y3=sin(3*t+a);y4=sin(4*t+a);subplot(2,2,1);plot(x,y1);subplot(2,2,2);plot(x,y2);subplot(2,2,3);plot(x,y3);subplot(2,2,4);plot(x,y4)(2)n=2;x=sin(t);y1=sin(2*t+0);y2=sin(2*t+pi/3);y3=sin(2*t+pi/2);y4=sin(2*t+pi);subplot(2,2,1);plot(x,y1);subplot(2,2,2);plot(x,y2);subplot(2,2,3);plot(x,y3);subplot(2,2,4);plot(x,y4)注:此題好似題目本身就有問題,因為“t〞取值不明,所以運(yùn)行不了,畫不出圖來。轉(zhuǎn)化為符號式來畫圖也是不可行的。〔純粹個人意見,可能我想錯了方向,會做的同學(xué)請上傳一下正確的做法〕3.繪制在定義域x=[-2,2],y=[-2,2]內(nèi)的曲面?!怖胢eshgrid〕x=-2:2;y=x;[X,Y]=meshgrid(x,y);Z=X^2*exp(-(X^2+Y^2));mesh(X,Y,Z)4.求代數(shù)方程3x5+4x4+7x3+2x2+9x+12=0的所有根?!怖胷oots函數(shù)〕p=[3472912];roots(p)5.把1開五次方,并求其全部五個根。(提示:解x5-1=0)p=[10000-1];roots(p)6,,畫出在上的曲線。x1=-3:0.01:-1;y1=(-x1.^2-4.*x1-3)/2;x2=-1:0.01:1;y2=-x2.^2+1;x3=1:0.01:3;y3=(-x3.^2+4.*x3-3)/2;plot(x1,y1);holdon;plot(x2,y2);holdon;plot(x3,y3)Matlab上機(jī)實驗三1.設(shè),求x=sym('x');y=x*exp(2*x);diff(y,20)2.設(shè),求x=sym('x');y=(sin(x))^4+(cos(x))^4;diff(y,10)3.設(shè),求x=sym('x');y=sym('y');z=y^4*((sin(x))^4)+x^4*((cos(y))^4);int(z,x)4.x=sym('x');int(1/(x^2+1)*(x^2+x),x)5.x=sym('x');int((sqrt((9-x^2)^3)/x^6),x)6.x=sym('x');int(x+x^3,x,1,2)7.求級數(shù)的和:sym(‘n’);symsum(n+2/2^n,n,1,inf)8.利用函數(shù)int計算二重不定積分x=sym('x');y=sym('y');z=(x+y)*exp(-x*y);a=int(z,x);int(a,y)Matlab上機(jī)實驗四1.編寫一個M函數(shù)文件計算以下級數(shù)的和:x和n的值由input指令給出。%test.mfunctionf=testx=input('Inputthex:\n');n=input('Inputthen:\n');j=1;f2=0;fori=1:n;j=1;fork=1:i;j=j*k;f1=x^i/j;endf2=f2+f1;endf=f2+1;2.編制m文件,等待鍵盤輸入,輸入密碼123,密碼正確,顯示輸入密碼正確,程序完畢;否則提示,重新輸入。方法一:functionf=checkpassword=input('Pleaseinputthepassword:\n');if(password==123)disp(‘輸入密碼正確’)elsecheck;end方法二:functionpwn=0;k=0;n=input('請輸入密碼(整數(shù))\n');while(k==0)ifn==123disp('輸入正確')k=1;elsek=0;n=input('密碼錯誤,請重新輸入密碼(整數(shù))\n');endend3.編制m文件,輸入n〔正整數(shù)〕,顯示所有小于n的質(zhì)數(shù)。%第一m文件〔用于判斷某數(shù)是否為素數(shù)〕:functionleap=panduan(n)leap=1;fori=2:sqrt(n+1)ifmod(n,i)==0leap=0;break;endend%第二個m文件〔用于讀進(jìn)n個數(shù)并調(diào)用panduan.m判斷讀數(shù)是否為素數(shù),并把是素數(shù)的顯示出來〕:functionzhishu(n)form=2:nifpanduan(m)==1disp(m);endend4.編寫一個M函數(shù)文件fun_es(x),計算如下函數(shù):,其中參數(shù)可以為標(biāo)量,也可以為向量。在Matlab指令窗口鍵入如下命令檢驗該函數(shù):fun_es(3)functionfun_es(x)y=0.5.*exp(x./3)-x.^2.*sin(x)5.下面程序?qū)崿F(xiàn)什么功能forn=100:200ifrem(n,77)~=0continueendbreakendn求100到200之間,第一個77的整倍數(shù)6.編寫m函數(shù)文件求半徑為r的圓的面積和周長。functionf=circle(r)S=pi*r^2L=2*pi*r7.?dāng)?shù)組[1:99]中素數(shù)〔即質(zhì)數(shù)〕元素的和%第一m文件〔用于判斷某數(shù)是否為素數(shù)〕:functionleap=panduan(n)leap=1;fori=2:sqrt(n+1)ifmod(n,i)==0leap=0;break;endend%第二個m文件〔用于讀進(jìn)1-99并調(diào)用panduan.m判斷讀數(shù)是否為素數(shù),并把是素數(shù)的加起來,最后輸出〕:functiontotal(n)k=0;form=1:nifpanduan(m)==1k=k+m;endendk8.從鍵盤輸入假設(shè)干個數(shù),當(dāng)輸入0時完畢輸入,求這些數(shù)的平均值以及平方和。%求n個數(shù)的平均值及平方和functionpingfang1l=0;total1=0;total2=0;a=input('inputa:\n');while(a~=0)l=l+1;total1=total1+a;total2=total2+a^2;a=input('');endavg=total1/ltotal29.輸入x,y的值,并將它們的值互換后輸出。functionf=change(x,y)x=input('Inputx:\n');y=input('Inputy:\n');a=x;x=y;y=a;x,y10.利用rand產(chǎn)生10個隨機(jī)數(shù),利用for循環(huán)對其進(jìn)展排序〔從大到小〕。disp('排列前:')a=rand(10,1)fori=1:10forj=1:10-iifa(j+1,1)>a(j,1)b=a(j,1);a(j,1)=a(j+1,1);a(j+1,1)=b;endendenddisp('排列后:')aMatlab上機(jī)實驗四1.編寫一個M函數(shù)文件計算以下級數(shù)的和:x和n的值由input指令給出。functiony=jiecheng(n)%定義jiecheng函數(shù)s=1;fori=1:ns=s*i;endy=s;functionzy1x=input('請輸入x值:');n=input('請輸入n值:');m=1;i=0:n;form=m+x.^i/jiecheng(i);%調(diào)用上面的公式endm2.編制m文件,等待鍵盤輸入,輸入密碼123,密碼正確,顯示輸入密碼正確,程序完畢;否則提示,重新輸入。functionf=zy2()t=input('Inputkey(keyis123)')ift==123'good'else'Yourarefool,inputagain'zy2;//從新輸入;end3.編制m文件,輸入n〔正整數(shù)〕,顯示所有小于n的質(zhì)數(shù)。functionf=myzy31(n)k=sqrt(n);flag=1;fori=2:k;ifmod(n,i)==0flag=0;break;endendf=flag;//判斷一個數(shù)字是否是素數(shù);functionmyzy32(n)fori=2:nifmyzy31(i)==1//調(diào)用myzy31,判斷是否是素數(shù),如果是就輸出;ielsei;//i后面有“;〞就是不輸出了;endend4.編寫一個M函數(shù)文件fun_es(x),計算如下函數(shù):,其中參數(shù)可以為標(biāo)量,也可以為向量。在Matlab指令窗口鍵入如下命令檢驗該函數(shù):fun_es(3)functionf=fun_es(n)f=0.5.*exp(n./3)-n.*n.*sin(n);//usethedotnotonlyadapttonumbersbutalsomatrix5.下面程序?qū)崿F(xiàn)什么功能forn=100:200ifrem(n,77)~=0continueendbreakendn//實現(xiàn)輸出在100到200之間第一個被77整除的數(shù)字,就是154;6.編寫m函數(shù)文件求半徑為r的圓的面積和周長。functionf=myzy6r=input('Inputr:')disp('Theaearis:')disp(r*r*pi)disp('Theperimeteris')disp(2*pi*r)7.?dāng)?shù)組[1:99]中非素數(shù)〔即質(zhì)數(shù)〕元素的和//在這個函數(shù)中令n=99即可;functionmyzy32(n)sum=0;functionmyzy32(n)fori=2:nifmyzy31(i)==1//調(diào)用myzy31,判斷是否是素數(shù),如果是就輸出;isum=sum+i;//求和elsei;//i后面有“;〞就是不輸出了;endendsum//求和輸出;fori=2:nifmyzy31(i)==1

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論