MATLAB课后题答案整理 联系客服

发布时间 : 星期一 文章MATLAB课后题答案整理更新完毕开始阅读a3d8c550804d2b160a4ec005

第一章

1.利用MATLAB的帮助功能分别查询inv、plot、max、round等函数的功能及用法。 Help+函数

2.简述MATLAB的主要功能。

①数值计算和符号计算功能。②绘图功能。③编程语言功能。④扩展功能。 3.help命令和lookfor命令有何区别?

Help命令只搜索出那些与关键字完全匹配的结果,lookfor命令对搜索范围内的M文件进行关键字搜索,条件比较宽松。Lookfor命令只对M文件的第一行进行关键字搜索。若在lookfor命令后加上-all选项,则可对M文件进行全文搜索。 第二章1 (1)w?2?(1?0.34245?10?6)

w=sqrt(2)*(1+0.34245*10^(-6)) w = 1.4142

2?a?(2)x?b?c?e2??abc,其中a=3.5,b=5,c=-9.8。 tan(b?c)?aa=3.5;b=5;c=-9.8;x=(2*pi*a+(b+c)/(pi+a*b*c)-exp(2))/(tan(b+c)+a) x =0.9829 (3)y?2??[(1?2?)??(0.8333?)?],其中α=3.32,β=-7.9。 44? a=3.32;b=-7.9;y=2*pi*a^2*((1-pi/4)*b-(0.8333-pi/4)*a) y = -128.4271 (4)z?21?3i12t]。 eln(t?1?t2),其中t=[5?0.652 t=[2,1-3i;5,-0.65];z=0.5*exp(2*t)*log(t+sqrt(1+t.*t)) z = 1.0e+004 *

0.0048 + 0.0002i 0.0048 - 0.0034i 1.5899 2.0090 - 1.3580i

?15?483?12.已知A?[078],B?[253]求下列表达式的值。

3617?320(1)A?6B和A?B?I。(2)A*B、A.*B和B*A。(3)A/B及B\\A。

(4)[A,B]和[A([1,3],:);B^2]。

输入矩阵A和B:A=[-1 5 -4;0 7 8;3 61 7];>> B=[8 3 -1;2 5 3;-3 2 0]; 分别输入A+6*B,A^2-B+eye(size(A)),A*B,A.*B,B*A,A/B ,B\\A,[A,B],[A([1,3],:);B^2] 这些表达式,回车求值。

22310?0.778041?45655]。3.已知A?[(1)输出A在[10,25]范围内的全部元素。

3250326?9.54543.14(2)取出A前3行构成矩阵B,前两列构成矩阵C,右下角3*2子矩阵构成矩阵D,B与C

的乘积构成矩阵E。(3)分别求表达式E

输入矩阵A:A=[23 10 -0.778 0;41 -45 65 5;32 5 0 32;6 -9.54 54 3.14]; 取出矩阵A的前3行构成矩阵B:>> B=A(1:3,:) 取出矩阵A的前2列构成矩阵C:>> C=A(:,1:2)

矩阵A的右下角3x2子矩阵构成矩阵D:>> D=A(2:4,3:4) B与C的乘机构成矩阵E:>> E=B*C

分别输入式E=0&A<25)回车求值: 4.产生5阶希尔伯特矩阵H和5阶帕斯卡矩阵P,且求其行列式的值Hh和Hp以及它们的条件数Th和Tp,判断哪个矩阵性能更好,why?

H=hilb(5); P=pascal(5); Hh=det(H) Hh = 3.7493e-012 Hp=det(P) Hp = 1

Th=cond(H) Th = 4.7661e+005 Tp=cond(P) Tp = 8.5175e+003

条件数越趋近于1,矩阵的性能越好,所以帕斯卡矩阵性能更好。

?296185.已知:A?[20?8512]求A的特征值及特征向量,并分析其数学意义。 85A=[-29,6,18;20,5,12;-8,8,5] A =

-29 6 18 20 5 12 -8 8 5 [V,D]=eig(A) V =

0.7130 0.2803 0.2733 -0.6084 -0.7867 0.8725 0.3487 0.5501 0.4050 D =

-25.3169 0 0 0 -10.5182 0 0 0 16.8351

V为A的特征向量,D为A的特征值。它们之间满足A*V=V*D 6.写出完成下列操作的命令。(1)删除矩阵A的第7号元素。(2)将向量t的0元素用机器零来代替。(3)将含有12个元素的向量x转换成3*4的矩阵。(4)求一个字符串的ASCII。(5)产生和A同样大小的幺矩阵。(6)从矩阵A提取主对角线元素,并以这些元素构成对角阵B。

(1) A(7)=[](2) abs(x)(3) reshape(x,3,4)(4) k=find(t==0); t(k)=0(5) ones(size(A))(6) diag(A) B= diag(diag(A))

7.要产生均值为3,方差为1的500个正态分布的随即序列,写出相应的表达式。 3+randn(25,20)

8.求下列矩阵的主对角元素、上三角矩阵、下三角矩阵、逆矩阵、行列式的值、秩、范数、

1条件数、迹。(1)A?[?11023530.43432?42] ](2)B?[?8.942152111509输入矩阵A和B:A=[1 -1 2 3;5 1 -4 2;3 0 5 2;11 15 0 9];>> B=[0.43 43 2;-8.9 4 21];

求矩阵A的主对角元素:>> diag(A) 求矩阵B的主对角元素:>> diag(B) 求矩阵A的上三角阵:>> triu(A) 求矩阵B的上三角阵:>> triu(B) 求矩阵A的下三角阵:>> tril(A) 求矩阵B的下三角阵:>> tril(B) 求矩阵A的逆矩阵:>> inv(A) 求矩阵B的伪逆矩阵:>> pinv(B) 求矩阵A的行列式的值:>> det(A)

因为B不是方阵,无法求它的行列式的值。

求矩阵A的秩:>> rank(A) 求矩阵B的秩:>> rank(B) 求矩阵A的迹:>> trace(A) 求矩阵B的迹:>> trace(B)

三种方式求矩阵A的范数:>> norm(A) >> norm(A,1) >> norm(A,inf) 三种方式求矩阵B的范数:>> norm(B,inf) >> norm(B,1) >> norm(B) 三种方式求矩阵A的条件数:>> cond(A,1) >> cond(A) >> cond(A,2) >> cond(A,inf) 三种方式求矩阵B的条件(但有两种错误无法求出): >> cond(B,inf)

??? Error using ==> cond

A is rectangular. Use the 2 norm. >> cond(B) >> cond(B,1) ??? Error using ==> cond

A is rectangular. Use the 2 norm. >> cond(B,2)

9.在MATLAB中如何建立结构矩阵和单元矩阵?

结构矩阵建立P46结构矩阵名.成员名=表达式 单元矩阵建立P47矩阵元素用大括号括起来。 第三章

1.从键盘输入一个3位整数,将它反向输出。如输入639,输出为936.

n=input('请输入一个三位数:'); a=fix(n/100); b=fix((n-a*100)/10); c=n-a*100-b*10; d=c*100+b*10+a

2.输入一个百分制成绩,要求输出成绩等级A、B、C、D、E。其中90~100分为A,80~89分为B,70~79分为C,60~69分为D,60分一下为E。要求:(1)分别用if语句和switch语句实现。(2)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。

(1)n=input('请输入成绩'); switch n

case num2cell(90:100) p='A';

case num2cell(80:89) p='B';

case num2cell(70:79) p='C';

case num2cell(60:69)

p='D'; otherwise p='E'; end price=p

(2)n=input('请输入成绩'); if n>=90&n<=100 p='A';

elseif n>=80&n<=89 p='B';

elseif n>=70&n<=79 p='C';

elseif n>=60&n<=69 p='D'; else

p='E'; end price=p (3)try n; catch

price='erroe' End

m=input('请输入一个百分制的成绩: '); if m>=0&m<=100

switch fix(m/10) case {9,10}

disp('这个成绩所属的成绩等级:A'); case {8}

disp('这个成绩所属的成绩等级:B'); case {7}

disp('这个成绩所属的成绩等级:C'); case {6}

disp('这个成绩所属的成绩等级:D'); otherwise

disp('这个成绩所属的成绩等级:E'); end else

disp('错误:输入的成绩不合理'); End

3.当n分别取100、1000、10000时,求下列各式的值:

1111?2) (1)2?2?2?????2????(?123n6