1、秋级MATLAB程序设计实验报告二2014秋2012级MATLAB程序设计实验报告实验x 班级:xx 姓名:xx 学号:xx一、实验目的1、掌握矩阵和数组的表示与赋值方法2、了解字符串、结构和单元等数据类型在MATLAB中的使用 3、掌握MATLAB中基本的数值运算,了解基本统计函数的使用4、掌握多项式基本运算以及线性方程组的求解方法二、实验内容1、利用“:”操作符和linspace函数生成数组a=0,6,12,18,24,30,36,42,并将数组a分别转化为4*2和2*4的矩阵。2、在MATLAB中输入矩阵,并使用MATLAB回答以下的问题:(1) 创建一个由A中第2列到第4列所有元素组成
2、的43数组B;(2) 创建一个由A中第3行到第4行所有元素组成的24数组C;(3) 创建一个由A中前两行和后三列所有元素组成的23数组D;(4) 根据A利用单下标方法和双虾标方法分别创建向量a=-5 6 15和向量b=6 8 1,并利用向量a和b生成矩阵;(5) 利用“”删除矩阵A的第二行和第三列。3、利用ones()函数和zero()函数生成如下矩阵:4、生成矩阵:(1) 取出所有大于0的元素构成一个向量a(可推广到从一个矩阵里筛选出符合条件的元素组成一个向量)。(2) 将原矩阵中大于0的元素正常显示,而小于等于0的元素全部用0来表示(可推广到将原矩阵中不符合条件的全用0来表示,符合条件的值
3、不变)。5、已知,下列运算是否合法,为什么?如合法,写出计算结果?(1) result1=a 合法(2) result2=a*b 不合法(3) result3=a+b 合法(4) result4=b*d 合法(5) result5=b;c*d 合法(6) result6=a.*b 合法(7) result7=a./b 合法(8) result8=a.*c 不合法(9) result9=a.b 合法(10) result10=a.2 合法(11) result11=a2 不合法(12) result11=2.a 合法 result1=aresult1 = 1 4 2 5 3 6 result2=
4、a*b? Error using = mtimesInner matrix dimensions must agree. result3=a+bresult3 = 3 6 2 5 8 11 result4=b*dresult4 = 31 22 22 40 49 13 result5=b;c*dresult5 = 31 22 22 40 49 13 -5 -8 7 result6=a.*bresult6 = 2 8 -3 4 15 30 result7=a./bresult7 = 0.5000 0.5000 -3.0000 4.0000 1.6667 1.2000 result8=a.*c? E
5、rror using = timesMatrix dimensions must agree. result9=a.bresult9 = 2.0000 2.0000 -0.3333 0.2500 0.6000 0.8333 result10=a.2result10 = 1 4 9 16 25 36 result11=a2? Error using = mpowerInputs must be a scalar and a square matrix. result12=2.aresult12 = 2 4 8 16 32 646、已知(1) 求a+b,a*b,a.*b,a/b,a./b,a2,a
6、.2的结果,并观察运算结果。(2) 求c中所有元素的平均值、最大值、中值,并将c中元素按从小到大顺序排列。(3) 解释b(2:3,1,3)的含义,并将生成的数组赋值给d。关系运算与逻辑运算7、已知a=20,b=-2,c=0,d=1,计算下列表达式:(1) r1=ab(2) r2=ab&cd(3) r3=a=b*(-10)(4) r4=b|c8、已知(1) 求矩阵A的秩(rank);(2) 求矩阵A的行列式(determinant);(3) 求矩阵A的逆(inverse);(4) 求矩阵A的特征值及特征向量(eigenvalue and eigenvector)。9、已知多项式f1(x)=2x4
7、-x2+3x+2,f2(x)=3x+2,利用MATLAB进行如下计算:(1) 计算两多项式的乘法和除法;(2) 求多项式f1(x)的根;(3) 分别计算多项式当x=3以及时的值。10、用两种方法求下列方程组的解,并比较两种方法执行的时间。11、建立一个元胞数组,要求第一个元素为44的魔术矩阵,第二个元素为18.66,第三个元素为matlab,第四个元素为等差数列7,9,11,1399。计算第一个元胞第4行第2列加上第二个元胞+第三个元胞里的第二个元素+最后一个元胞的第10个元素。12、建立一个结构体的数组,包括3个人,字段有姓名,年龄,分数,其中分数由随机函数产生一个3行10列的数据表示了有1
8、0门课程,每门课程有三个阶段的分数。问题是:(1) 如何找到第2个人的分数并显示出来;(2) 如何找到第2个人的每门课程3个阶段的平均分数并显示出来;(3) 所有同学的10门课程的每门课程的平均分如何计算出来?要求放到一个数组里;(4) 找到这个班所有同学的姓名放到一个元胞数组里;13、完成以下操作:(1) 已有str=decision 20 made on 10/20/10,查找字符串中20出现的位置。(2) 有字符串s1=matlabexpress,s2=matlabexcellent,比较两个字符串的前8个字符是否相同,相同输出1,否则输出0。统计字符串s1=matlabexpress中
9、ex出现的次数三、源程序和实验结果1restoredefaultpath;matlabrca=linspace(0,42,8)reshape(a,2,4)reshape(a,4,2)2A=3,6,8,1;-5,7,22,17;6,9,16,-12;15,13,-21,0B=A(1:4,2:4)C=A(3:4,:)D=A(1:2,2:4)Aa=A(2,1) A(1,2) A(4,1)a=A(2) A(3) A(4)b=A(1,2) A(1,3) A(1,4)b=A(5) A(9) A(13)E=a;bEA(2,:)=A(:,3)=3A=zeros(5)A(2:4,2:4)=ones(3)A(3,
10、3)=34A=-4:4A=reshape(A,3,3)a=linspace(0,0,9)for i=1:9if A(i)=0a(i)=A(i)endendfor i=1:9if A(i)maxmax=c(i)z=0c=1,0,8,3,6,2,-4,23,46,6for i=1:10z=100for j=i:10if c(j)br2=ab&cdr3=a=b*(-10)r4=b|c8A=7,2,1,-2;9,15,3,-2;-2,-2,11,5;1,3,2,13r=rank(A)d=det(A)AV,D=eig(A)9f1=2 0 -1 3 2f2=3 2conv(f1,f2)polyval(f1
11、,3)x=1,3;2,4polyval(f1,x)10syms abcdea,b,c,e,d=solve(7*a+14*b-9*c-2*d+5*e-100,3*a-15*b-13*c-6*d-4*e-200,-11*a-9*b-2*c+5*d+7*e-300,5*a+7*b+14*c+16*d-2*e-400,-2*a+5*b+12*c-11*d-4*e-500)a=7,14,-9,-2,5;3,-15,-13,-6,-4;-11,-9,-2,5,7;5,7,14,16,-2;-2,5,12,-11,-14b=100;200;300;400;500c=a brref(c)11A(1,1)=ma
12、gic(4)A(2,1)=18.66A(1,2)=matlabA(2,2)=7:2:99a=A1,1b=A1,2c=A2,1d=A2,2a(4,2)+b(2)+c+d(10)12student=struct(name,age,score,randint(3,10,0,100)student1=struct(name,age,score,randint(3,10,0,100)student2=struct(name,age,score,randint(3,10,0,100)student1.scoreavg1=student1.score(1,:)+student1.score(2,:)+stu
13、dent1.score(3,:)avg1./3avg=student.score(1,:)+student.score(2,:)+student.score(3,:)avg2=student2.score(1,:)+student2.score(2,:)+student2.score(3,:)a=avg./3;avg1;avg2./3C(1,1)=student.name+student1.name+student2.namestudent.name=astudent1.name=bstudent2.name=cm=student.name,student1.name,student2.namem=student.name;student1.name;student2.nameC(1,1)=m13str=decision 20 made on 10/20/10findstr(str,20)s1=matlabexpresss2=matlabexcellentstrncmp(s1,s2,8)
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1