第3章 MATLAB矩阵处理_习题答案

合集下载

MatLab(数学矩阵)书中习题答案程序

MatLab(数学矩阵)书中习题答案程序

MatLab(数学矩阵)书中习题答案程序1、A=[3 4 -7 -12; 5 -7 4 2; 1 0 8 -5; -6 5 -2 10];B=[4; -3; 9; -8];X=A\B % 或者inv(A)*B2、A=[1 4 8 13; -3 6 -5 -9; 2 -7 -12 -8];B=[5 4 3 -2; 6 -2 3 -8; -1 3 -9 7];C1=A*B'C2=A'*BC3=A.*Binv(C1)inv(C2)inv(C3) % 此种情况下因为不是方阵,没有逆阵3、clear; I=eye(4,4);M=magic(4);A=ones(2,4);B=zeros(2,4);C=[I A'*B; [A;B] M];C1=C([2,4,6,8],:);C2=C(:,[2,4,6,8]);D=C1*C2D1=C2*C14、x=linspace(0,2*pi,101);y=cos(x).*[0.5+3*sin(x)./(1+x.^2)];figure; plot(x,y)5、a=[3,4,7,2,9,12];ra=roots(a)6、cleara=[1,0,0,0,0,-1];ra=roots(a)7、x=[-3,-5,-8,-9];a=poly(x)8、a=[1,2,5,4,4];b=[1];[r,p,k]=residue(b,a)yi=r(1)*exp(p(1)*t)+r(2)*exp(p(2)*t)+r(3)*exp(p(3)*t)+r(4)*ex p(p(4)*t);plot(t,yi)9、clearR1=randn(8,6);for i=1:size(R1,2) % size(R1,2) 表示R1的列数a(i)=mean(R1(:,i));% 各列的平均值endfor i=1:size(R1,2) % size(R1,2) 表示R1的列数b(i)=std(R1(:,i));%各列的均方差endMR1=sum(sum(R1))/(size(R1,1)*size(R1,2)) %总的均值等于总元素之和处以元素数量R2=[]; %将R1的所有元素转化为一个数组,便于统计计算总均方差for i=1:(size(R1,1))for j=1:size(R1,2)R2=[R2,R1(i,j)];endendstdR1=std(R2) %总的均方差10、R=rand(4,6);for i=1:size(R,1)for j=1:size(R,2)R(i,j)=round(R(i,j)*15+1);endendRinv(R(:,[1:4]))11、t=0:0.1:10;for r=2:1:4x=r*cos(t)+3*t;y=r*sin(t)+3;hold on; plot(x,y)endt=0:0.1:10;apha=3;for N=1:4x=sin(t);y=sin(N*t+apha);subplot(2,2,N); plot(x,y);endfigure; % 重新画一个图N=2;a=[0,pi/3,pi/2,pi]; %将apha的数据先存为一个数组for i=1:4apha=a(i);x=sin(t);y=sin(N*t+apha);subplot(2,2,i); plot(x,y);end13、a=[1 -4 0 3 -2 6];x=linspace(-2,8);y=polyval(a,x);figure; plot(x,y) % 画出的图请放大后可以看清楚根的位置roots(a)14、clearz=linspace(0,10);for i=1:size(z,2)x(i)=z(i)*sin(3*z(i));y(i)=z(i)*cos(3*z(i));endfigure; plot3(x,y,z)***************************************** 下面的程序也可以clearz=linspace(0,10);。

第三章MATLAB线性方程组及矩阵特征值

第三章MATLAB线性方程组及矩阵特征值
0.2000
情形2:m<n(不定方程)
- 0.8000
情形3:m>n(超定方程),多用于曲线拟合。
解线性方程组的一般函数文件如下:
function [x,y]=line_solution(A,b)
[m,n]=size(A);y=[];
if norm(b,1)>0
%非齐次方程组
if rank(A)==rank([A,b]) %方程组相容
for i=1:3
if i~=2, a(i,:)=a(i,:)-a(i,2)*a(2,:); end
end
a
a(3,:)=a(3,:)/a(3,3)
for i=1:3;
if i~=3, a(i,:)=a(i,:)-a(i,3)*a(3,:); end;
end; a A_inv = a(:,4:6) A*A_inv
2in
ai 2
,对调2
r2行.
消元:用a22把ai2消为0 (i 3, 4, , n) :
第2 行
ai 2 a22
第i行,则
aij
a2 j
ai 2 a22
aij (i
3, 4,
, n;j
2, 3,
, n 1)
到此原方程组化为
a11x1 a12 x2 a13 x3
a22 x2 a23 x3
2, 3,
, n;j 1, 2,
, n 1)
到此原方程组化为
a11 x1 a12 x2 a22 x2
ai2 x2
an2 x2
a1n xn a1,n1 a2n xn a2,n1
ain xn ai,n1
ann xn an,n1
(2) 找r2,使 ar2 2

matlab第三章课后部分答案

matlab第三章课后部分答案

matlab第三章课后部分答案习题三3-2 从键盘输入一个三位整数,将它反向输出。

如输入639,输出为936程序如下:m=input('请输入一个三位整数:');m1=fix(m/100);%求m的百位整数m2=rem(fix(m/10),10);%求m的十位数字m3=rem(m,10);%求m的个位数字m=m3*100+m2*10+m1%反向输出m3-3 输入一个百分制成绩,要求输出成绩等级A,B,C,D,E。

其中90~100分为A,80~89分为B,70~79分为C,60~69分为D,60分以下为E。

要求:(1)分别用if语句和switch语句实现。

(2)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。

程序如下:(1)if语句c=input('请输入成绩:');if c>=90&c<=100disp('A 成绩合理');elseif c>=80&c<=89disp('B 成绩合理');elseif c>=70&c<=79disp('C 成绩合理'); elseif c>=60&c<=69disp('D 成绩合理'); elseif c<60disp('E 成绩合理');elsedisp('成绩错误');end(2)switch语句c=input('请输入成绩:'); switch fix(c)case num2cell(90:100)disp('A 成绩合理'); case num2cell(80:89)disp('B 成绩合理'); case num2cell(70:79)disp('C 成绩合理'); case num2cell(60:69)disp('D 成绩合理'); case num2cell(0:59)disp('E 成绩合理');x=fix(rand(1,20)*89)+10;x1=fix(sum(x)/20);disp(['平均数是:',num2str(x1)])m=(rem(x,2)==0&x<x1);n=find(m);disp(['小于平均数的数是:',num2str(x(n))]); 3-6 输入20个数,求其中最大数和最小数。

matlab课后习题答案第三章

matlab课后习题答案第三章

第3章数值数组及其运算习题3及解答1 要求在闭区间]2,0[ 上产生具有10个等距采样点的一维数组。

试用两种不同的指令实现。

〖目的〗●数值计算中产生自变量采样点的两个常用指令的异同。

〖解答〗%方法一t1=linspace(0,2*pi,10)%方法二t2=0:2*pi/9:2*pi %要注意采样间距的选择,如这里的2*pi/9.t1 =Columns 1 through 70 0.6981 1.3963 2.0944 2.7925 3.4907 4.1888 Columns 8 through 104.88695.58516.2832t2 =Columns 1 through 70 0.6981 1.3963 2.0944 2.7925 3.4907 4.1888 Columns 8 through 104.88695.58516.28322 由指令rng('default'),A=rand(3,5)生成二维数组A,试求该数组中所有大于0.5的元素的位置,分别求出它们的“全下标”和“单下标”。

〖目的〗●数组下标的不同描述:全下标和单下标。

●sub2ind, int2str, disp的使用。

●随机发生器的状态控制:保证随机数的可复现性。

〖解答〗rng('default')A=rand(3,5)[ri,cj]=find(A>0.5);id=sub2ind(size(A),ri,cj);ri=ri';cj=cj';disp(' ')disp('大于0.5的元素的全下标')disp(['行号 ',int2str(ri)])disp(['列号 ',int2str(cj)])disp(' ')disp('大于0.5的元素的单下标')disp(id')A =0.8147 0.9134 0.2785 0.9649 0.95720.9058 0.6324 0.5469 0.1576 0.48540.1270 0.0975 0.9575 0.9706 0.8003大于0.5的元素的全下标行号 1 2 1 2 2 3 1 3 1 3列号 1 1 2 2 3 3 4 4 5 5大于0.5的元素的单下标1 2 4 5 8 9 10 12 13 153 采用默认全局随机流,写出产生长度为1000的“等概率双位(即取-1,+1)取值的随机码”程序指令,并给出 -1码的数目。

第3章MATLAB矩阵分析与处理

第3章MATLAB矩阵分析与处理

第3章MATLAB矩阵分析与处理MATLAB是一种强大的数学计算软件,用于实现矩阵分析与处理。

在MATLAB中,矩阵是最常用的数据结构之一,通过对矩阵的分析和处理,可以实现很多有用的功能和应用。

本章将介绍MATLAB中矩阵分析与处理的基本概念和方法。

1.矩阵的基本操作在MATLAB中,我们可以使用一些基本的操作来创建、访问和修改矩阵。

例如,可以使用“[]”操作符来创建矩阵,使用“(”操作符来访问和修改矩阵中的元素。

另外,使用“+”、“-”、“*”、“/”等运算符可以对矩阵进行加减乘除等运算。

2.矩阵的运算MATLAB提供了一系列的矩阵运算函数,可以对矩阵进行常见的运算和操作,例如矩阵的转置、求逆、行列式、特征值和特征向量等。

这些函数可以帮助我们进行矩阵的分析和求解。

3.矩阵的分解与合并在MATLAB中,我们可以对矩阵进行分解或合并操作。

例如,可以将一个矩阵分解为其QR分解、LU分解或奇异值分解等。

另外,可以使用“[]”操作符来将多个矩阵合并为一个矩阵,或者使用“;”操作符来将多个矩阵连接为一个矩阵。

4.矩阵的索引与切片MATLAB提供了灵活的索引和切片功能,可以方便地访问和修改矩阵中的元素。

可以使用单个索引来访问单个元素,也可以使用多个索引来访问/修改一行或一列的元素。

此外,还可以通过切片操作来访问矩阵的一部分。

5.矩阵的应用矩阵分析与处理在MATLAB中有着广泛的应用。

例如,可以使用矩阵进行图像处理,通过对图像矩阵的操作,可以实现图像的缩放、旋转、滤波等。

另外,矩阵还可以用于线性回归、分类、聚类和模式识别等领域。

总之,MATLAB提供了丰富的功能和工具,可以方便地进行矩阵分析与处理。

无论是简单的矩阵运算,还是复杂的矩阵分解与合并,MATLAB 都提供了相应的函数和操作符。

通过熟练使用MATLAB,我们可以高效地进行矩阵分析与处理,从而实现各种有用的功能和应用。

(完整版)第3章MATLAB矩阵处理_习题答案

(完整版)第3章MATLAB矩阵处理_习题答案

3
B.y=cond(A) D.y=norm(A)
1.建立 3 阶幺矩阵的命令是
。ones(3)
2.设 A 为 2×3 矩阵,则用 zeros(size(A))建立的矩阵是

列的
矩阵。2,3,零
3.将 3 阶魔方矩阵主对角线元素加 10,命令是
。10*eye(3)+magic(3)
4.
可以用来描述矩阵的性能,它越接近于
D.B=diag(tril(A))
7.在 MATLAB 中定义 A=randn(5,4,3,2),则下列关于 A 的操作中正确的是(
)。D
A.y=eig(A)
B.y=reshape(A,[4 3 6 7])
C.y=cond(A)
D.y=sin(A)
8.在命令行窗口中分别输入下列命令,对应输出结果正确的是(
7 8 9
10 11 12

B
10
7
4
1
11 8 5 2
12
3
9

C
6
6
9
3
12
2 5 8 11
1
4
7
10
第 1 题: (1)
a=1:12;
A=reshape(a,3,4)
(2)
B=rot90(A)
(3)
C=rot90(A,-1) 3.用矩阵求逆法求线性方程组的解。
4
x1
3x1
2x2 x3 x2 2x3
)。 C
A.命令 x=[-2:2]',结果 x=[-2 -1 0 1 2]
B.命令 x=zeros(1,2);x>0,结果 ans=1
C.命令 y=diag(eye(3),1)&#,2),结果 ans=[-5.0501 1.2311]

matlab第二版课后习题答案

matlab第二版课后习题答案
《MATLAB第二版课后习题答案》
MATLAB是一种强大的数学软件,被广泛应用于工程、科学和金融等领域。

《MATLAB第二版》是一本经典的教材,为了帮助学生更好地掌握MATLAB的使用,书中提供了大量的课后习题。

下面我们将为大家总结一些MATLAB第二版课后习题的答案,希望能对大家的学习有所帮助。

1. 第一章课后习题答案
第一章主要介绍了MATLAB的基本操作,包括变量的定义、矩阵的运算、函数的使用等。

在课后习题中,有一道题目是要求计算一个矩阵的逆矩阵。

答案是使用MATLAB中的inv函数,将原矩阵作为参数传入即可得到逆矩阵。

2. 第二章课后习题答案
第二章介绍了MATLAB中的绘图功能,包括二维和三维图形的绘制。

有一道课后习题是要求绘制一个正弦曲线和余弦曲线,并在同一张图上显示。

答案是使用MATLAB中的plot函数,分别绘制正弦曲线和余弦曲线,并使用legend函数添加图例。

3. 第三章课后习题答案
第三章介绍了MATLAB中的控制流程,包括if语句、for循环和while循环等。

有一道课后习题是要求编写一个程序,计算1到100之间所有偶数的和。

答案是使用for循环遍历1到100之间的所有数,判断是否为偶数并累加。

通过以上几个例子,我们可以看到MATLAB第二版课后习题的答案涵盖了各种基本和高级的操作,对于学习MATLAB是非常有帮助的。

希望大家在学习MATLAB的过程中能够多加练习,掌握更多的技巧和方法。

Matlab教程之矩阵运算


第3章 矩阵、数组和符号运算
c.利用M文件产生矩阵
A=[1,2,3,4,5 6,7,8,9,10 11,12,13,14,15 16,17,18,19,20 21,22,23,24,25]
第3章 矩阵、数组和符号运算
d.从外部数据文件调入矩阵 用load命令输入 用Import 菜单输入
第3章 矩阵、数组和符号运算
>> a=[1,2,3,4]; >> x=0:0.5:2;
% x=logspace(a,b,n) 生成有 n 个元素的行向量 x,其元素起点 x(1)=10a, 终点 x(n)=10b。
>> b=logspace(0,2,4) b= 1.0000 4.6416 21.5443 100.0000
第3章 矩阵、数组和符号运算
% eye 生成单位阵
0 0 0 1 0 0 0 0 0 0 1 0
% rand 生成均匀分布的随机矩阵
>> R=rand(4) R= 0.9501 0.8913 0.2311 0.7621 0.6068 0.4565 0.4860 0.0185 0.8214 0.4447 0.6154 0.7919 0.9218 0.7382 0.1763 0.4057
>> ones(3,4) ans = 1 1 1 1 1 1 1 1 1 1 1 1 >> F=5*ones(3) F= 5 5 5 5 5 5 5 5 5
%生成空阵
>> K=[] K= []
-6 0 0 0 0
% zeros 生成全部元素为0的矩阵
>> Z=zeros(2,4) Z= 0 0 0 0 0 0 0 0 0 0 0 0 0 1

915230-MATLAB第三版实验答案

s=0;n=0;
for i=2:49 b=i*(i+l)-l; m=fix(sqrt(b)); for j=2:m
if rem(b,j)==0 break
end
end
if j==m
n=n+l;
s=s+b;
end
end
实验6函数文件
%第1题
function y=matl (x)$建立函数文件matl・m
实验7绘图操作
%第1题
% (1)
x=linspace(0,2*pif101);
y=(0.5 + 3*sin (x)・/(1+x.A2))・*cos(x); plot(x,y)
%(2)
x=-5:0・01:5;
y=[];%起始设y为空向疑
for x0=x
if x0<=0$不能写成x0=<0
y=[y,(xO+sqrt(pi))/exp(2)]; else
for i=10:99
j = 10*rem(iz10)+fix (i/10);
if mat3(i)&mat3(j)
disp (i)
end
end
%第4题
function y=fx(x)
y=l・/ ( (x-2)・A2+0・l)+1./((x-3)・A4+0・01);
$在命令窗口调用该函数文件:
y=fx(2)
if t==f+!
z=x+y;
elseif t==,-1
z=x-y;
elseif t==1*'
z=x*y;
elseif t==、['
z=x/y;

matlab课后习题答案

第2章 MATLAB 矩阵运算基础2.1 在MATLAB 中如何建立矩阵⎥⎦⎤⎢⎣⎡194375,并将其赋予变量a ? >> a=[5 7 3;4 9 1]2.5 计算矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡897473535与⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡638976242之和。

>> a=[5 3 5;3 7 4;7 9 8];>> b=[2 4 2;6 7 9;8 3 6]; >> a+b ans =7 7 7 9 14 13 15 12 142.6 求⎥⎦⎤⎢⎣⎡+-+-+-+-++=i 44i 93i 49i 67i 23i 57i 41i 72i 53i 84x 的共轭转置。

>> x=[4+8i 3+5i 2-7i 1+4i 7-5i;3+2i 7-6i 9+4i 3-9i 4+4i];>> x’ ans =4.0000 - 8.0000i 3.0000 - 2.0000i 3.0000 -5.0000i 7.0000 +6.0000i 2.0000 +7.0000i 9.0000 - 4.0000i 1.0000 - 4.0000i 3.0000 + 9.0000i 7.0000 + 5.0000i 4.0000 - 4.0000i2.7 计算⎥⎦⎤⎢⎣⎡=572396a 与⎥⎦⎤⎢⎣⎡=864142b 的数组乘积。

>> a=[6 9 3;2 7 5];>> b=[2 4 1;4 6 8]; >> a.*b ans =12 36 3 8 42 402.9 对于B AX =,如果⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=753467294A ,⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=282637B ,求解X 。

>> A=[4 9 2;7 6 4;3 5 7];>> B=[37 26 28]’;-0.5118 4.0427 1.33182.10 已知:⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=987654321a ,分别计算a 的数组平方和矩阵平方,并观察其结果。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第3章 MATLAB矩阵处理
习题3
一、选择题
1.产生对角线上全为1,其余为0的2行3列矩阵的命令是()。

C
A.ones(2,3) B.ones(3,2) C.eye(2,3) D.eye(3,2)
2.建立3阶单位矩阵A的命令是()。

A
A.A=eye(3) B.A=eye(3,1) C.A=eye(1,3) D.A=ones(3)
3.产生和A同样大小的幺矩阵的命令是()。

B
A.eye(size(A)) B.ones(size(A))
C.size(eye(A)) D.size(ones(A))
,
4.建立5×6随机矩阵A,其元素为[100,200]范围内的随机整数,相应的命令是()。

D
A.A=fix(100+200*rand(5,6)) B.A=fix(200+100*rand(5,6))
C.A= fix(100+300*rand(5,6)) D.A=fix(100+101*rand(5,6))
5.产生均值为1、方差为的500个正态分布的随机数,相应的命令是()。

A。

A.1+sqrt*randn(25,20) B.1+*randn(500)
C.+randn(500) D.+randn(25,20)
6.从矩阵A提取主对角线元素,并以这些元素构成对角阵B,相应的命令是()。

B
A.B=diag(A) B.B=diag(diag(A))
C.B=diag(triu(A)) D.B=diag(tril(A))
7.在MATLAB中定义A=randn(5,4,3,2),则下列关于A的操作中正确的是()。

D
\
A.y=eig(A) B.y=reshape(A,[4 3 6 7])
C.y=cond(A) D.y=sin(A)
8.在命令行窗口中分别输入下列命令,对应输出结果正确的是()。

C
A.命令x=[-2:2]',结果x=[-2 -1 0 1 2]
B.命令x=zeros(1,2);x>0,结果ans=1
C.命令y=diag(eye(3),1)',结果y=[0 0]
D.命令5-10*rand(1,2),结果ans=[ ]
9.将矩阵A对角线元素加30的命令是()。

A
A .A+30*eye(size(A))
B .A+30*eye(A)
C .A+30*ones(size(A))
D .A+30*eye(4)

10.求矩阵A 的范数的命令是( )。

D A .y=trace(A) B .y=cond(A)
C .y=rank(A)
D .y=norm(A)
二、填空题
1.建立3阶幺矩阵的命令是 。

ones(3)
2.设A 为2×3矩阵,则用zeros(size(A))建立的矩阵是 行 列的 矩阵。

2,3,零
3.将3阶魔方矩阵主对角线元素加10,命令是 。

10*eye(3)+magic(3)
4. 可以用来描述矩阵的性能,它越接近于 ,矩阵的性能越好。

条件数,1
5.命令A=sparse([0,1,1;0,0,1])执行后,输出结果的最后一行是 。

(2,3) 1
/
三、应用题 1.建立一个方阵A ,求A 的逆矩阵和A 的行列式的值。

2.先生成A 矩阵,然后将A 左旋90°后得到B ,右旋90°后得到C 。

⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=129631185210741A ,⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=321654987121110B ,⎥⎥⎥⎥⎦
⎤⎢⎢⎢⎢⎣⎡=101112789456123C 第1题:
(1)
a=1:12;
A=reshape(a,3,4)
(2)
B=rot90(A)

(3) C=rot90(A,-1)
3.用矩阵求逆法求线性方程组的解。

⎪⎩⎪⎨⎧=+=+-=-+8312102322421
321321x x x x x x x x
第3题:
A=[4,2,-1;3,-1,2;12,3,0];
b=[2,10,8]';
x=inv(A)*b
4.求下列矩阵的主对角线元素、上三角阵、下三角阵、秩、范数、条件数和迹。

⎥⎥⎥⎥


⎢⎢⎢⎢⎣⎡--=901511250324153211)1(A (2)⎥⎦⎤⎢⎣⎡-=2149
.824343
.0B 、
第4题:
略。

5.求矩阵A 的特征值和相应的特征向量。

⎥⎥
⎥⎦

⎢⎢⎢⎣⎡=225.05.025.0115.011A
第5题:
A=[1,1,;1,1,;,,2];
[X,D]=eig(A)。

相关文档
最新文档