matlab所有实验及答案

时间:2025-07-08

实验二 习题

5

24 1、 矩阵Y=

0151

,给出元素1的全下标和 4510023 21473

单下标,并用函数练习全下标和单下标的转换,求出元素100的存储位置。取出子矩阵

10

321 ,并求该

矩阵的维数。

解:命令为:

Y=[5,2,4;0,15,1;45,100,23;21,47,3] Y(2,3) Y(10)

sub2ind([4 3],2,3) [i,j]=ind2sub([4 3],10)

find(Y==100) sub2ind([4 3],3,2)

B=Y(2:2:4,3:-2:1) 或 B=Y([2 4],[3 1]) [m n]=size(Y)

2、 建立一个数值范围为0—100内4*5的整数随机矩阵。

求出大于50的元素的位置。 解:命令为:

G=int8(100*rand(4,5)) find(G>50)

3、 已知矩阵A=[1 0 -1 ;2 4 1; -2 0 5],B=[0 -1

0;2 1 3;1 1 2] 求2A+B、A2-3B、A*B、B*A、A .*B,A/B、A\B 解:命令为:

A=[1 0 -1 ;2 4 1; -2 0 5] B=[0 -1 0;2 1 3;1 1 2] E=2*A+B F=A^2-3*B G=A*B H=B*A I=A.*B J=A/B K=A\B

4、 利用函数产生3*4阶单位矩阵和全部元素都为8的

4*4阶矩阵,并计算两者的乘积。 解:命令为: A=eye(3,4) B=8*ones(4)

C=A*B

1

0 68 5、 创建矩阵a= 94012.3 ,取出其前两列 005.1 2 0 230 7

构成的矩阵b,取出前两行构成矩阵c,转置矩阵b构成矩阵d,计算a*b、c<d ,c&d, c|d ,~c|~d 解:命令为:

a=[-1,0,-6,8;-9,4,0,12.3;0,0,5.1,-2;0,-23,0,-7] b=a(:,[1 2]) c=a([1 2],:) d=b’ e=a*b f=c<d g=c&d h=c|d i=~c|~d

6、 使用函数,实现A到B 、C、D、E的转换

14710 101112

A=

25811 B=

789 6912 3

456 123

32

1

C=

654 10741

987

,D= 11852

121110

12963

1410E= 2511 3612

解:命令为:

A=[1 4 7 10;2 5 8 11;3 6 9 12] B=rot90(A) C=rot90(A,3) D=fliplr(A)

A(:,3)=[] E=A

20

00 7. 矩阵A=

454012.3 285.1 2 ,用函数取出列向量 0911004

0 45 20

08 和矩阵00 0 454 100

285.1 0911004 解:命令为:

A=[2 0 0 0;45 4 0 12.3;2 8 5.2 -2;0 91 100 4] B=diag(A) C=tril(A)

8.建立5阶魔方矩阵,求该矩阵的行列式和逆矩阵、迹以及any和all运算结果。建立一个M文件保存起来并练习调用。

解:命令文件为: A=magic(5) x=det(A) B=inv(A) C=trace(A) D=any(A) E=all(A)

实验三 习题

1. 创建2*2元胞数组A=‘ abc’

1001 24 , 并求出1001; 891 2i

创建结构数组student,要求包含三个属性名:姓名,学

号,年龄,分别存放 张三,10021、20 李四、10022、18

王五、10023、19,并写出取得李四学号的操作。 解:命令为:

A={'abc',[1001;24];89,1+2i} x=A{1,2}(1,1)

student=struct('name',{'张三';'李四';'王五'},'number',{10021;10022;10023},'age',{20;18;19}) student(2,1).number

2. 求多项式p(x) 5x5

3x3

2x2

10,在x 12.3

时的值,和p(x)=0时候的根。 解:命令为: p=[5,0,-3,2,0,10]; poly2sym(p)

x=polyval(p,12.3) y=roots(p)

110268 3.已知矩阵A= 94012.3 , 求A 4505 2 的特征值, 0 232 7

特征向量。

解:命令为:

A=[-1 10 26 8;-9 4 0 12.3;45 0 5 -2;0 -2 32 -7] [X,D]=eig(A) t=eig(A)

估算x=21.5时的近似值,用三次多项式拟合正弦曲线,并求拟合多项式系数向量。 解:命令为: x=[21 22 23 24] format long

y=[0.35537 0.37461 0.39073 0.40674] interp1(x,y,21.5,'nearest') [P,S]=polyfit(x,sin(x),3)

(P是一个长度为N+1的向量,代表N次多项式,S是采样点的误差向量。)

5.将10个学生5门功课的成绩存入矩阵P中,进行 (1)求每门课的最高分,最低分,平均分, (2)求5门课总分的最高分、最低分 解:命令为:

Y=[90 89 91 82 75;88 82 85 89 95;79 89 93 82 76;91 89 87 79 85;90 79 78 91 82;86 85 84 89 88;89 91 79 90 94;75 85 95 90 87;85 78 75 90 89;98 89 87 86 80] a=max(Y) b=min(Y) c=mean(Y,1) format short f=mean(Y,2)*5 t=max(f) h=min(f) 或n=sum(Y,2) a=max(n) b=min(n)

6. 用数值方法解线性方程组

6x 5y 2z 5u 4

9x y 4z u 133x 4y 2z 2u 1 3x 9y 2u 11

解:命令为:

A=[6 5 -2 5;9 -1 4 -1;3 4 2 -2;3 -9 2 0] b=[-4 13 1 11]' X=A\b

7、 求方程x5x 2x 10,在x=1附近的根。 解:命令为:

fsolve('x*5^x+2*x-10',1)

实验四:程序设计

注意:要用M文件实现,一道题,一个M文件,命令文件或者函数文件自选 20

1. 求

n!

n 1

解:命令文件为 sum=0; s=1;

for n=1:20 s=n*s;

sum=sum+s; end sum

2. 求Sn a aa aaa aa a得值,其中a是一个数字,由键盘输入,表达式中位数最多项a的个数,也由键盘输入。例如:输入a=3,n=4, 则s4=3+33+333+3333 解:命令文件为

sum=0; s=0;

a=input('请输入a的值:') n=input('请输入n的值:') for i=1:n

s=s+a*10^(i-1); sum=sum+s;

end sum

3. 计

算下列分段函数的值:

0x 5f(x) x 35 x 10

4 2x

x 10解:命令文件为

x=input('输入x的值:') if x<=5 f=0;

elseif x>5&x<=10 f=(x-3)/4.0; else

f=2*x; end

f

4. 有一群鸡和兔子,加在一起头的数量是36,脚的数

量是100,编程序解答鸡和兔子数量各是多少? 解:命令文件为 for x=0:36

for y=0:36-x

if (x+y==36)&(2*x+4*y==100) disp('鸡有:') disp(x)

disp('兔子有') disp(y) end end end

5. 产生20个两位随机整数,输出其中小于平均值的奇

数。

解:命令文件为

disp('随机矩阵为:') A=randint(1,20,[10,99]) Aver=mea …… 此处隐藏:3707字,全部文档内容请下载后查看。喜欢就下载吧 ……

matlab所有实验及答案.doc 将本文的Word文档下载到电脑

    精彩图片

    热门精选

    大家正在看

    × 游客快捷下载通道(下载后可以自由复制和排版)

    限时特价:7 元/份 原价:20元

    支付方式:

    开通VIP包月会员 特价:29元/月

    注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
    微信:fanwen365 QQ:370150219