薛山matlab基础教程第三版习题解答2

合集下载

MATLAB习题及参考答案经典.doc

MATLAB习题及参考答案经典.doc

习题:1, 计算⎥⎦⎤⎢⎣⎡=572396a 与⎥⎦⎤⎢⎣⎡=864142b 的数组乘积。

2, 对于B AX =,如果⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=753467294A ,⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=282637B ,求解X 。

3, 已知:⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=987654321a ,分别计算a 的数组平方和矩阵平方,并观察其结果。

4, 角度[]604530=x ,求x 的正弦、余弦、正切和余切。

(应用sin,cos,tan.cot)5, 将矩阵⎥⎦⎤⎢⎣⎡=7524a 、⎥⎦⎤⎢⎣⎡=3817b 和⎥⎦⎤⎢⎣⎡=2695c 组合成两个新矩阵: (1)组合成一个4⨯3的矩阵,第一列为按列顺序排列的a 矩阵元素,第二列为按列顺序排列的b 矩阵元素,第三列为按列顺序排列的c 矩阵元素,即 ⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡237912685574(2)按照a 、b 、c 的列顺序组合成一个行矢量,即 []2965318772546, 将(x -6)(x -3)(x -8)展开为系数多项式的形式。

(应用poly,polyvalm)7, 求解多项式x 3-7x 2+2x +40的根。

(应用roots)8, 求解在x =8时多项式(x -1)(x -2) (x -3)(x -4)的值。

(应用poly,polyvalm)9, 计算多项式9514124234++--x x x x 的微分和积分。

(应用polyder,polyint ,poly2sym)10, 解方程组⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡66136221143092x 。

(应用x=a\b)11, 求欠定方程组⎥⎦⎤⎢⎣⎡=⎥⎦⎤⎢⎣⎡5865394742x 的最小范数解。

(应用pinv) 12, 矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡-=943457624a ,计算a 的行列式和逆矩阵。

(应用det,inv)13, y =sin(x ),x 从0到2π,∆x =0.02π,求y 的最大值、最小值、均值和标准差。

matlab课后习题与答案

matlab课后习题与答案

习题二1.如何理解“矩阵是MATLAB最基本的数据对象”?答:因为向量可以看成是仅有一行或一列的矩阵,单个数据(标量)可以看成是仅含一个元素的矩阵,故向量和单个数据都可以作为矩阵的特例来处理。

因此,矩阵是MATLAB最基本、最重要的数据对象。

2.设A和B是两个同维同大小的矩阵,问:(1)A*B和A.*B的值是否相等?答:不相等。

(2)A./B和B.\A的值是否相等?答:相等。

(3)A/B和B\A的值是否相等?答:不相等。

(4)A/B和B\A所代表的数学含义是什么?答:A/B等效于B的逆右乘A矩阵,即A*inv(B),而B\A等效于B矩阵的逆左乘A矩阵,即inv(B)*A。

3.写出完成下列操作的命令。

(1)将矩阵A第2~5行中第1, 3, 5列元素赋给矩阵B。

答:B=A(2:5,1:2:5); 或B=A(2:5,[1 3 5])(2)删除矩阵A的第7号元素。

答:A(7)=[](3)将矩阵A的每个元素值加30。

答:A=A+30;(4)求矩阵A的大小和维数。

答:size(A);ndims(A);(5)将向量t的0元素用机器零来代替。

答:t(find(t==0))=eps;(6)将含有12个元素的向量x转换成34矩阵。

答:reshape(x,3,4);(7)求一个字符串的ASCII码。

答:abs(‘123’); 或double(‘123’);(8)求一个ASCII码所对应的字符。

答:char(49);4. 下列命令执行后,L1、L2、L3、L4的值分别是多少?A=1:9;B=10-A;...L1=A==B;L2=A<=5;L3=A>3&A<7;L4=find(A>3&A<7);答:L1的值为[0, 0, 0, 0, 1, 0, 0, 0, 0]L2的值为[1, 1, 1, 1, 1, 0, 0, 0, 0]L3的值为[0, 0, 0, 1, 1, 1, 0, 0, 0]L4的值为[4, 5, 6]5. 已知23100.7780414565532503269.5454 3.14A -⎡⎤⎢⎥-⎢⎥=⎢⎥⎢⎥-⎣⎦完成下列操作:(1) 取出A 的前3行构成矩阵B ,前两列构成矩阵C ,右下角32⨯子矩阵构成矩阵D ,B 与C 的乘积构成矩阵E 。

MATLAB数据及其运算_习题答案

MATLAB数据及其运算_习题答案

第2章M A T L A B数据及其运算_习题答案(总3页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--第2章 MATLAB数据及其运算习题2一、选择题1.下列可作为MATLAB合法变量名的是()。

D A.合计 B.123 C.@h D.xyz_2a 2.下列数值数据表示中错误的是()。

CA.+10 B. C.2e D.2i3.使用语句t=0:7生成的是()个元素的向量。

A A.8 B.7 C.6 D.54.执行语句A=[1,2,3;4,5,6]后,A(3)的值是()。

B A.1 B.2 C.3 D.4 5.已知a为3×3矩阵,则a(:,end)是指()。

D A.所有元素 B.第一行元素C.第三行元素 D.第三列元素6.已知a为3×3矩阵,则运行a (1)=[]后()。

A A.a变成行向量 B.a变为2行2列C.a变为3行2列 D.a变为2行3列7.在命令行窗口输入下列命令后,x的值是()。

B>> clear>> x=i*jA.不确定 B.-1 C.1 D.i*j 8.fix(354/100)+mod(354,10)*10的值是()。

D A.34 B.354 C.453 D.439.下列语句中错误的是()。

BA.x==y==3 B.x=y=3C.x=y==3 D.y=3,x=y10.find(1:2:20>15)的结果是()。

CA.19 20 B.17 19C.9 10 D.8 911.输入字符串时,要用()将字符括起来。

CA.[ ] B.{ } C.' ' D." " 12.已知s='显示"hello"',则s的元素个数是()。

A A.9 B.11 C.7 D.1813.eval('sqrt(4)+2')的值是()。

matlab第三章课后部分答案

matlab第三章课后部分答案

matlab第三章课后部分答案习题三3-2 从键盘输入一个三位整数,将它反向输出。

如输入639,输出为936程序如下:m=input('请输入一个三位整数:');m1=fix(m/100);%求m的百位整数m2=rem(fix(m/10),10);%求m的十位数字m3=rem(m,10);%求m的个位数字m=m3*100+m2*10+m1%反向输出m3-3 输入一个百分制成绩,要求输出成绩等级A,B,C,D,E。

其中90~100分为A,80~89分为B,70~79分为C,60~69分为D,60分以下为E。

要求:(1)分别用if语句和switch语句实现。

(2)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。

程序如下:(1)if语句c=input('请输入成绩:');if c>=90&c<=100disp('A 成绩合理');elseif c>=80&c<=89disp('B 成绩合理');elseif c>=70&c<=79disp('C 成绩合理'); elseif c>=60&c<=69disp('D 成绩合理'); elseif c<60disp('E 成绩合理');elsedisp('成绩错误');end(2)switch语句c=input('请输入成绩:'); switch fix(c)case num2cell(90:100)disp('A 成绩合理'); case num2cell(80:89)disp('B 成绩合理'); case num2cell(70:79)disp('C 成绩合理'); case num2cell(60:69)disp('D 成绩合理'); case num2cell(0:59)disp('E 成绩合理');x=fix(rand(1,20)*89)+10;x1=fix(sum(x)/20);disp(['平均数是:',num2str(x1)])m=(rem(x,2)==0&x<x1);n=find(m);disp(['小于平均数的数是:',num2str(x(n))]); 3-6 输入20个数,求其中最大数和最小数。

matlab基础与应用教程课后答案

matlab基础与应用教程课后答案

exp(-0.3*a).*sin(a+0.3)
3.x=[2,4;-0.45,5];
log(x+sqrt(1+x.*x))/2
4. A=[3,54,2;34,-45,7;87,90,15];B=[1,-2,67;2,8,74;9,3,0];
(1)A*B
ans =
129
432
4197
7
-407
-1052
end display(sqrt(s*6)) 向量运算
n=input('input n:'); k=1:n; display(sqrt(sum(1./k.^2)*6)) 4. y=0;k=0; while y<3
k=k+1; y=y+1/(2*k-1); end display([k-1,y-1/(2*k-1)]) 5. x0=0;x=1;k=0; a=input('a='); b=input('b='); while abs(x-x0)>=1e-5 && k<500 x0=x; x=a/(b+x0); k=k+1; end display([k,x]); display([(-b+sqrt(b^2+4*a))/2,(-b-sqrt(b^2+4*a))/2]);
1. P=pascal(5);H=hilb(5); Dp=det(P);Dh=det(H);
Kp=cond(P);Kh=cond(H); P 矩阵的性能更好,因为 Kp 较小 2. A=[1,-1,2,3;0,9,3,3;7,-5,0,2;23,6,8,3] B=[3,pi/2,45;32,-76,sqrt(37);5,72,4.5e-4;exp(2),0,97] A1=diag(A);B1=diag(B); A2=triu(A);B2=triu(B); A3=tril(A);B3=tril(B); rA=rank(A);rB=rank(B);

matlab练习题和答案

matlab练习题和答案

matlab练习题和答案控制系统仿真实验Matlab部分实验结果目录实验一 MATLAB基本操作 ............................................................................................ 1 实验二 Matlab编程 .................................................................................................... 5 实验三Matlab底层图形控制 ..........................................................................................6 实验四控制系统古典分析.............................................................................................12 实验五控制系统现代分析 . (15)实验六 PID控制器的设计 ...........................................................................................19 实验七系统状态空间设计.............................................................................................23 实验九直流双闭环调速系统仿真 (25)实验一 MATLAB基本操作1 用MATLAB可以识别的格式输入下面两个矩阵1233,,1443678,i,,,,2357,,,,2335542,i,,,, A,1357B,,,2675342,i,,3239,,,,189543,,,,1894,,再求出它们的乘积矩阵C,并将C矩阵的右下角2×3子矩阵赋给D矩阵。

matlab基础与应用教程课后答案

matlab基础与应用教程课后答案

matlab基础与应用教程课后答案【篇一:matlab教程基本应用练习题及解答】txt>要求:将每题的答案(命令行和运行结果、图片或m文件的文件名及具体内容)直接拷贝插入到各题的下方:(1)若为命令行,要求将提示符“”一起拷入,并在右侧用“%”注明命令行的每条命令的作用;(2)若为多个运行结果,拷入后要求解释每个结果具体对应题目中的哪个要求,也在右侧用“%”注明;(3)如果为m文件,除了将文件名和此文件的具体内容全部拷入外,再将所有原始m文件和本练习题电子版放在一个以“专业班级+本人姓名+学号”命名的文件夹内一起上传。

ans =1 0 00 1 00 0 1ans =0 0 00 0 0ans =1 1 11 1 11 1 11 1 120+40*rand(1,10) %生成10个在区间[20,60]上均匀分布的随机数。

ans =44.617351.677556.872549.528327.050636.228257.418856.676236 .410855.7460二.1)计算向量(2,4,6,8)的最大值,最小值,平均值,中值,排序,总和值; max([2,4,6,8])%最大值ans =8min([2,4,6,8])% 最小值ans =2mean([2,4,6,8])% 平均值ans =5median([2,4,6,8])% 中值ans =5sort([2,4,6,8])% 排序ans =2 4 6 8sum([2,4,6,8])% 总和值ans =202)在行向量(2,4,6,8)和(1,3,5,7)之间实施加减乘除及幂运算; a=[2 4 6 8];b=[1 3 5 7];a+b%加ans =3 7 11 15a-b%减ans =1 1 1 1a.*b%乘ans =2 12 30 56a./b%除ans =2.0000 1.3333 1.2000 1.1429a.^b%幂ans =2 64 7776 20971523)在向量(1,3,5)与标量2之间实施加减乘除及幂运算。

薛山matlab基础教程第三版习题解答2

薛山matlab基础教程第三版习题解答2

第2章习题参考答案1.创建double的变量,并进行计算。

(1) a=87,b=190,计算 a+b、a-b、a*b。

(2) 创建 uint8 类型的变量,数值与(1)中相同,进行相同的计算。

参考答案:(1)>> a=87a =87>> b=190b =190>> a+bans =277>> a-bans =-103>> a*bans =16530(2)>> c=uint8(87)c =87>> d=uint8(190)d =190>> c+dans =255>> c-dans =>> c*dans =2552.计算:(1) ()sin60(2) e3(3) 3cos 4⎛⎫π ⎪⎝⎭参考答案:(1)>> sind(60)ans =0.8660(2)>> exp(3)ans =20.0855(3)>> cos(3*pi/4)ans =-0.70713.设2u =,3v =,计算: (1) 4log uv v(2) ()22e u v v u +-参考答案:(1)>> u=2;>> v=3;>> 4*u*v/log(v)ans =21.8457(2)>> (exp(u)+v)^2/(v^2-u)ans =15.4189(3)>> sqrt(u-3*v)/(u*v)ans =0 + 0.4410i4.计算如下表达式:(1) ()()i i-+3542(2) ()-sin28i参考答案:(1)>> (3-5*i)*(4+2*i)ans =22.0000 -14.0000i(2)>> sin(2-8*i)ans =1.3553e+03 + 6.2026e+02i5.判断下面语句的运算结果。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第2章习题参考答案
1.创建double的变量,并进行计算。

(1)a=87,b=190,计算a+b、a-b、a*b。

(2) 创建uint8 类型的变量,数值与(1)中相同,进行相同的计算。

参考答案:
(1)
>> a=87
a =
87
>> b=190
b =
190
>> a+b
ans =
277
>> a-b
ans =
-103
>> a*b
ans =
16530
(2)
>> c=uint8(87)
c =
87
>> d=uint8(190)
d =
190
>> c+d
ans =
255
>> c-d
ans =
>> c*d
ans =
255
2.计算:
(1) ()
sin60
(2) e3
(3) 3cos 4⎛⎫π ⎪⎝⎭
参考答案:
(1)
>> sind(60)
ans =
0.8660
(2)
>> exp(3)
ans =
20.0855
(3)
>> cos(3*pi/4)
ans =
-0.7071
3.设2u =,3v =,计算: (1) 4log uv v
(2)
()22e u v v u +-
(3) 参考答案:
(1)
>> u=2;
>> v=3;
>> 4*u*v/log(v)
ans =
21.8457
(2)
>> (exp(u)+v)^2/(v^2-u)
ans =
15.4189
(3)
>> sqrt(u-3*v)/(u*v)
ans =
0 + 0.4410i
4.计算如下表达式:
(1) ()()
i i
-+
3542
(2) ()
-
sin28i
参考答案:
(1)
>> (3-5*i)*(4+2*i)
ans =
22.0000 -14.0000i
(2)
>> sin(2-8*i)
ans =
1.3553e+03 + 6.2026e+02i
5.判断下面语句的运算结果。

(1)4 < 20
(2)4 <= 20
(3)4 == 20
(4)4 ~= 20
(5)'b'<'B'
参考答案:
(1)
>> 4<20
ans =
1
(2)
>> 4<=20
ans =
1
(3)
>> 4==20
ans =
(4)
>> 4~=20
ans =
1
(5)
>> 'b'<'B'
6.设39a =,58b =,3c =,7d =,判断下面表达式的值。

(1) a b >
(2) a c <
(3) &&a b b c >>
(4) a d ==
(5) |a b c >
(6) ~~d
参考答案:
(1)
>> a=39;
>> b=58;
>> c=3;
>> d=7;
>> a>b
ans =
(2)
>> a<c
ans =
(3)
>> a>b&&b>c
ans =
(4)
>> a==d
ans =
(5)
>> a|b>c
ans =
1
(6)
>> ~~d
ans =
7.编写脚本,计算上面第2题中的表达式。

脚本文件内容为:
disp('sin(60)=');
disp(sind(60));
disp('exp(3)=');
disp(exp(3));
disp('cos(3*pi/4)=');
disp(cos(3*pi/4));
8.编写脚本,输出上面第6题中的表达式的值。

脚本文件内容为:
a=39;
b=58;
c=3;
d=7;
disp('a>b'),disp(a>b);
disp('a<c'),disp(a<c);
disp('a>b&&b>c'),disp(a>b&&b>c)
disp('a==d'),disp(a==d);
disp('a|b>c'),disp(a|b>c);
disp('~~d'),disp(~~d);。

相关文档
最新文档