秋级MATLAB程序设计实验报告二.docx

上传人:b****4 文档编号:11682139 上传时间:2023-03-30 格式:DOCX 页数:11 大小:58.26KB
下载 相关 举报
秋级MATLAB程序设计实验报告二.docx_第1页
第1页 / 共11页
秋级MATLAB程序设计实验报告二.docx_第2页
第2页 / 共11页
秋级MATLAB程序设计实验报告二.docx_第3页
第3页 / 共11页
秋级MATLAB程序设计实验报告二.docx_第4页
第4页 / 共11页
秋级MATLAB程序设计实验报告二.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

秋级MATLAB程序设计实验报告二.docx

《秋级MATLAB程序设计实验报告二.docx》由会员分享,可在线阅读,更多相关《秋级MATLAB程序设计实验报告二.docx(11页珍藏版)》请在冰豆网上搜索。

秋级MATLAB程序设计实验报告二.docx

秋级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)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 中医中药

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1