实验1 Matlab 的基本运算(2)实验目的:1、 掌握建立矩阵的方法;2、 掌握Matlab 各种表达式的书写规则以及常用函数的使用。
实验内容:1. 设有矩阵A 和BA ⎡⎤⎢⎥⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥⎣⎦12345678910111213141516171819202122232425 B ⎡⎤⎢⎥-⎢⎥⎢⎥=-⎢⎥⎢⎥⎢⎥⎣⎦30161769023497041311(1)求它们的乘积C>> A=1:25;A=reshape(A,5,5);A=A';B=[3,0,16;17,-6,9;0,23,-4;9,7,0;4,13,11];C=A*BC =93 150 77258 335 237423 520 397588 705 557753 890 717(2)将矩阵C 的右下角⨯32子矩阵赋给D>> D=C(3:5,2:3)D =520 397705 557890 717(3)查看Matlab 工作空间的使用情况2. 已知:矩阵...A -⎡⎤⎢⎥-⎢⎥=⎢⎥⎢⎥-⎣⎦2310077804145655325032695454314 完成下列操作:(1)取出A 的前3行构成矩阵B ,前两列构成矩阵C ,左下角3*2子矩阵构成矩阵D ,B 与C 的乘积构成矩阵E 。
A=[23,10,-0.778,0;41,-45,65,5;32,5,0,32;6,-9.54,54,3.14];B=A(1:3,:)C=A(1:4,1:2)D=A(2:4,1:2)E=B*CB =23.0000 10.0000 -0.7780 041.0000 -45.0000 65.0000 5.000032.0000 5.0000 0 32.0000C =23.0000 10.000041.0000 -45.000032.0000 5.00006.0000 -9.5400D =41.0000 -45.000032.0000 5.00006.0000 -9.5400E =1.0e+003 *0.9141 -0.22391.20802.71231.1330 -0.2103(2)分别求E<D,E&D,E|D,~E|~D和find(A>=10&A<25) >> E<Dans =0 10 00 1>> E&Dans =1 11 11 1>> E|Dans =1 11 11 1>> ~E|~Dans =0 00 00 0>> find(A>=10&A<25)ans =153. 完成下列操作:(1)求[100,999]之间能被21整除的数的个数。
q=100:999;w=rem(q,21);e=find(w==0);r=length(e)r =143提示:先利用冒号表达式,再利用find和length函数。
(2)建立一个字符串向量,删除其中的大写字母。
提示:利用find函数和空矩阵。
A=['kjkfEFTDFDhjkfdj'];e=find(A>'A'&A<'Z');A(e)=[]A =kjkfhjkfdj3. 建立元胞矩阵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)的值是多少?(2)B(2)和B(4)的值分别是多少?(3)B(3)=[]和B{3}=[]执行后,B的值分别是多少?>> clear 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};>> size(B)ans =2 2>> B(2)B(4)ans =[3x3 double]ans ={3x3 cell}>> B(3)=[]B =[1] [3x3 double] {3x3 cell}>> B{3}=[]B =[1] [3x3 double] []4. 设A⎡⎤⎢⎥=-⎢⎥⎢⎥⎣⎦310121342,B⎡⎤⎢⎥=-⎢⎥⎢⎥⎣⎦102111211,求满足关系A X B-=32的X。
A=[3,1,0;-1,2,1;3,4,2];B=[1,0,2;-1,1,1;2,1,1];X=(3.*A-B)./2X =4.0000 1.5000 -1.0000-1.0000 2.5000 1.00003.5000 5.5000 2.50005. 用结构数组来存储3名学生的基本情况数据,每名学生的数据包括学号、姓名、班级和某学期三门必修课的编号和名称。
> clear studentstudent=struct('no','20','name', '张听说', 'bj', 'j1','b1','001','m1','sx','b2','002','m2','yy','b3','003','m3','hx');>> student=struct('no','22','name', '张月', 'bj', 'j2','b1','001','m1','sx','b2','002','m2','yy','b3','003','m3','hx');>> student(2)=struct('no','20','name', '张听说', 'bj', 'j1','b1','001','m1','sx','b2','002','m2','yy','b3','003','m3','hx'); >> student(3)=struct('no','23','name', '里说', 'bj', 'j1','b1','001','m1','sx','b2','002','m2','yy','b3','003','m3','hx'); >> student(1), student(2),student(3)ans =no: '22'name: '张月'bj: 'j2'b1: '001'm1: 'sx'b2: '002'm2: 'yy'b3: '003'm3: 'hx'ans =no: '20'name: '张听说'bj: 'j1'b1: '001'm1: 'sx'b2: '002'm2: 'yy'b3: '003'm3: 'hx'ans =no: '23'name: '里说'bj: 'j1'b1: '001'm1: 'sx'b2: '002'm2: 'yy'b3: '003'6、求矩阵...A -⎡⎤⎢⎥=-⎢⎥⎢⎥-⎣⎦2310077841456532954314的最大值、最小值、中值和平均值。
A=[23,10,-0.778;41,-45,65;32,-9.54,3.14];q=max(max(A))q=min(min(A))q =65q =-45> A=reshape(A,1,9); >> q=(median(A)) q =10>> q=mean(A)q =13.2024>>。