秋级MATLAB程序设计实验报告二.docx
- 文档编号:11682139
- 上传时间:2023-03-30
- 格式:DOCX
- 页数:11
- 大小:58.26KB
秋级MATLAB程序设计实验报告二.docx
《秋级MATLAB程序设计实验报告二.docx》由会员分享,可在线阅读,更多相关《秋级MATLAB程序设计实验报告二.docx(11页珍藏版)》请在冰豆网上搜索。
秋级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列所有元素组成的4Χ3数组B;
(2)创建一个由A中第3行到第4行所有元素组成的2Χ4数组C;
(3)创建一个由A中前两行和后三列所有元素组成的2Χ3数组D;
(4)根据A利用单下标方法和双虾标方法分别创建向量a=[-5615]和向量b=[681],并利用向量a和b生成矩阵
;
(5)利用“[]”删除矩阵A的第二行和第三列。
3、利用ones()函数和zero()函数生成如下矩阵:
4、生成矩阵
:
(1)取出所有大于0的元素构成一个向量a(可推广到从一个矩阵里筛选出符合条件的元素组成一个向量)。
(2)将原矩阵中大于0的元素正常显示,而小于等于0的元素全部用0来表示(可推广到将原矩阵中不符合条件的全用0来表示,符合条件的值不变)。
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=a^2不合法
(12)result11=2.^a合法
>>result1=a'
result1=
14
25
36
>>result2=a*b
?
?
?
Errorusing==>mtimes
Innermatrixdimensionsmustagree.
>>result3=a+b
result3=
362
5811
>>result4=b*d
result4=
312222
404913
>>result5=[b;c']*d
result5=
312222
404913
-5-87
>>result6=a.*b
result6=
28-3
41530
>>result7=a./b
result7=
0.50000.5000-3.0000
4.00001.66671.2000
>>result8=a.*c
?
?
?
Errorusing==>times
Matrixdimensionsmustagree.
>>result9=a.\b
result9=
2.00002.0000-0.3333
0.25000.60000.8333
>>result10=a.^2
result10=
149
162536
>>result11=a^2
?
?
?
Errorusing==>mpower
Inputsmustbeascalarandasquarematrix.
>>result12=2.^a
result12=
248
163264
6、已知
(1)求a+b,a*b,a.*b,a/b,a./b,a^2,a.^2的结果,并观察运算结果。
(2)求c中所有元素的平均值、最大值、中值,并将c中元素按从小到大顺序排列。
(3)解释b(2:
3,[1,3])的含义,并将生成的数组赋值给d。
关系运算与逻辑运算
7、已知a=20,b=-2,c=0,d=1,计算下列表达式:
(1)r1=a>b
(2)r2=a>b&c>d
(3)r3=a==b*(-10)
(4)r4=~b|c
8、已知
(1)求矩阵A的秩(rank);
(2)求矩阵A的行列式(determinant);
(3)求矩阵A的逆(inverse);
(4)求矩阵A的特征值及特征向量(eigenvalueandeigenvector)。
9、已知多项式f1(x)=2x4-x2+3x+2,f2(x)=3x+2,利用MATLAB进行如下计算:
(1)计算两多项式的乘法和除法;
(2)求多项式f1(x)的根;
(3)分别计算多项式当x=3以及
时的值。
10、用两种方法求下列方程组的解,并比较两种方法执行的时间。
11、建立一个元胞数组,要求第一个元素为4Χ4的魔术矩阵,第二个元素为18.66,第三个元素为'matlab',第四个元素为等差数列7,9,11,13…99。
计算第一个元胞第4行第2列加上第二个元胞+第三个元胞里的第二个元素+最后一个元胞的第10个元素。
12、建立一个结构体的数组,包括3个人,字段有姓名,年龄,分数,其中分数由随机函数产生一个3行10列的数据表示了有10门课程,每门课程有三个阶段的分数。
问题是:
(1)如何找到第2个人的分数并显示出来;
(2)如何找到第2个人的每门课程3个阶段的平均分数并显示出来;
(3)所有同学的10门课程的每门课程的平均分如何计算出来?
要求放到一个数组里;
(4)找到这个班所有同学的姓名放到一个元胞数组里;
13、完成以下操作:
(1)已有str=‘decision20madeon10/20/10’,查找字符串中20出现的位置。
(2)有字符串s1=‘matlabexpress’,s2=‘matlabexcellent’,比较两个字符串的前8个字符是否相同,相同输出1,否则输出0。
统计字符串s1=‘matlabexpress’中ex出现的次数
三、源程序和实验结果
1
restoredefaultpath;matlabrc
a=linspace(0,42,8)
reshape(a,2,4)
reshape(a,4,2)
2
A=[3,6,8,1;-5,7,22,17;6,9,16,-12;15,13,-21,0]
B=A(1:
4,2:
4)
C=A(3:
4,:
)
D=A(1:
2,2:
4)
A
a=[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;b]
E'
A(2,:
)=[]
A(:
3)=[]
3
A=zeros(5)
A(2:
4,2:
4)=ones(3)
A(3,3)=3
4
A=[-4:
4]
A=reshape(A,3,3)
a=linspace(0,0,9)
fori=1:
9
ifA(i)>=0
a(i)=A(i)
end
end
fori=1:
9
ifA(i)<0
A(i)=0
end
end
5
a=[1,2,3;4,5,6];
b=[2,4,-1;1,3,5];
c=[1;0;-2];
d=[1,4,7;8,5,2;3,6,0];
a
b
c
d
result1=a'
result2=a*b
result3=a+b
result4=b*d
result5=[b;c']*d
result6=a.*b
result7=a./b
result8=a.*c
result9=a.\b
result10=a.^2
result11=a^2
result12=2.^a
6
a=[1,3,4;5,12,44;7,8,27]
b=[-7,8,4;12,24,38;68,-5,3]
c=[1,0,8,3,6,2,-4,23,46,6]
a+b
a*b
a.*b
a/b
a./b
a^2
a.^2
fori=1:
10
avg=avg+c(i)
end
avg/10
fori=1:
10
ifc(i)>max
max=c(i)
z=0
c=[1,0,8,3,6,2,-4,23,46,6]
fori=1:
10
z=100
forj=i:
10
ifc(j) z=c(j) number=j end end c(number)=c(i) c(i)=z end b(2: 3,[1,3]) b=[-7,8,4;12,24,38;68,-5,3] b(2: 3,[1,3]) d=b(2: 3,[1,3]) 7 a=20 b=-2 c=0 d=1 r1=a>b r2=a>b&c>d r3=a==b*(-10) r4=~b|c 8 A=[7,2,1,-2;9,15,3,-2;-2,-2,11,5;1,3,2,13] r=rank(A) d=det(A) A' [V,D]=eig(A) 9 f1=[20-132] f2=[32] conv(f1,f2) polyval(f1,3) x=[1,3;2,4] polyval(f1,x) 10 symsabcde [a,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,-14] b=[100;200;300;400;500] c=[ab] rref(c) 11 A(1,1)={magic(4)} A(2,1)={18.66} A(1,2)={'matlab'} A(2,2)={7: 2: 99} a=A{1,1} b=A{1,2} c=A{2,1} d=A{2,2} a(4,2)+b (2)+c+d(10) 12 student=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.score avg1=student1.score(1,: )+student1.score(2,: )+student1.score(3,: ) avg1./3 avg=student.score(1,: )+student.score(2,: )+student.score(3,: ) avg2=student2.score(1,: )+student2.score(2,: )+student2.score(3,: ) a=[avg./3;avg1;avg2./3] C(1,1)={student.name+student1.name+student2.name} student.name='a' student1.name='b' student2.name='c' m=[student.name,student1.name,student2.name] m=[student.name;student1.name;student2.name] C(1,1)={m} 13 str='decision20madeon10/20/10' findstr(str,'20') s1='matlabexpress' s2='matlabexcellent' strncmp(s1,s2,8)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 秋级 MATLAB 程序设计 实验 报告