matlab 习题及答案1
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一次上机作业
1.设A和B是两个同维同大小的矩阵,问:
1)A*B和A.*B的值是否相等?
不相等
2)A./B和B.\A的值是否相等?
相等
3)A/B和B\A的值是否相等?
不相等
4)A/B和B\A所代表的数学含义是什么?
A\B等效于A的逆左乘B矩阵,也就是inv(A)*B,而B/A等效于A矩阵的逆右乘B矩阵,也就是B*inv(A)。
2.写出完成下列操作的命令:
1)将矩阵A的第2~5行中的第1,3,5列元素赋给矩阵B
B=A(:,1:3:5)
2)删除矩阵A的第7号元素
A(7)=[]
3)将矩阵A的每个元素值加30
A=A+30
4)求矩阵A的大小和维数
whos和size(A)
5)将含有12个元素的向量x转换成3×4矩阵
y=reshape(x,3,4)
3.下列命令执行后,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
00010000L2=1
11110000L3=0
00111000
L4=4
564.已知:A=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡---14.35454
.9632053256545410778.01023完成下列操作:
(1)取出A 的前3行构成矩阵B ,前两列构成矩阵C ,右下角3×2子矩阵构成矩阵D ,B 与C 的乘积构成矩阵E 。
B=A(1:3,:)C=A(:,1:2)D=A(2:4,3:4)E=B*C
(2)分别求E
1)E 10 001 2)E&D 结果 1 10 11 1 3)E|D 结果 1 11 1114)~E|~D 结果 01 000 5)find(A>=10&A<25)结果 1 5 5.当A=[34,NaN,Inf,-Inf,-pi,eps,0]时,分析下列函数的执行结果:all(A),any(A), innan(A),isinf(A),isfinite(A) (1)all(A)=0,矩阵A不是所有的元素都非零。 (2)any(A)=1,矩阵A中存在非零元素。 (3)isnan(A)=0100000,矩阵A中元素是nan则相对应位置元素取1,否则取0. (4)isinf(A)=0011000,矩阵A中元素是+Inf 或—Inf,则相对应位置元素取1,否则取0。 (5)isfinite(A)=1000111,矩阵A中元素值大小有限则相对应位置元素取1,否则取0.。 6.用结构体矩阵来储存5名学生的基本情况数据,每名学生的数据包括学号、姓名、专业和6门课程的成绩。 a(1).x1=1;a(1).x2='zhang';a(1).x3='guangdianzi';a(1).x4=[100,100,100,100,100,90]; a(2).x1=2;a(2).x2='wang';a(2).x3='guangdianzi';a(2).x4=[90,90,90,90,90,100]; a(3).x1=3;a(3).x2='li';a(3).x3='guangdianzi';a(3).x4=[100,100,100,80,90,100]; a(4).x1=4;a(4).x2='zhao';a(4).x3='guangdianzi';a(4).x4=[100,6100,100,80,100,100]; a(5).x1=5;a(5).x2='sun';a(5).x3='guangdianzi';a(5).x4=[100,100,70,100,100,100]; 7.建立单元矩阵B并回答有关问题。 B{1,1}=1; B{1,2}=`Brenden`; B{2,1}=reshape(1:9,3,3); B{2,2}={12,34,2;54,21,3;4,23,67}; (1)size(B)和ndims(B)的值分别是多少? size(B) ans= 43 ndims(B) ans= 2 (2)B(2)和B(4)的值分别是多少? >>B(2) ans= 7 B(4) ans= 1 (3)B(3)=[]和B{3}=[]执行后,B的值分别是多少? B(3)=[] B= 1711185212963 8.在[0,3π]区间,求y=sin(x)的值。要求: (1)消去负半波,即(π,2π)区间内的函数值置0. x=0:pi/100:3*pi y=sin(x) y1=(x (2)(π/3,2π/3)和(7π/3,8π/3)区间内取值均为sinπ/3。 q=(x>pi/3&x<2*pi/3)|(x>7*pi/3&x<8*pi/3) qn=~q y2=q*sin(pi/3)+qn.*y1 提示: 先根据自变量向量x产生函数值向量y,然后按要求对y进行处理。处理的思路有两个:一是从自变量着手进行处理,二是从函数值着手进行处理。 9.写出完成下列操作的命令: 1)建立3阶单位矩阵。 a=eye(3) a= 100 010 001 2)建立5×6随机矩阵A,其元素为[100,200]范围内的随机整数。 A=100+(200-100)*rand(5,6) A= 195.0129176.2097161.5432140.5706105.7891120.2765 123.1139145.6468179.1937193.5470135.2868119.8722 160.6843101.8504192.1813191.6904181.3166160.3792 148.5982182.1407173.8207141.0270100.9861127.2188 189.1299144.4703117.6266189.3650113.8891119.8814 3)产生均值为1,方差为0.2的500个正态分布的随机数。 y=1+sqrt(0.2)*randn(50,10) 4)产生和A同样大小的幺矩阵。 ones(size(A)) 5)将矩阵A对角线的元素加30。 B=diag(A)+30 6)从矩阵A提取主对角线元素,并以这些元素构成对角阵B. B=diag(A) 10.使用函数,实现方阵左旋900或右旋900的功能。例如,原矩阵为A,A左旋后得到B,右旋后得到C。