MATLAB矩阵处理_习题答案
实验二MATLAB矩阵分析与处理答案
实验二 MATLAB 矩阵分析与处理班级 姓名 学号1. 设有分块矩阵33322322E R A O S ⨯⨯⨯⨯⎡⎤=⎢⎥⎣⎦,其中E 、R 、O 、S 分别为单位矩阵、随机矩阵、零矩阵和对角矩阵,试通过数值计算验证22+E R RS A O S ⎡⎤=⎢⎥⎣⎦。
>> E=eye(3);>> R=rand(3,2);>> O=zeros(2,3);>> S=diag([1 2]);>> A=[E R;O S];>> A^2>> B=[E R+R*S;O S^2]2. 产生5阶希尔伯特矩阵H 和5阶帕斯卡矩阵P ,且求其行列式的值Hh 和Hp 以及它们的条件数Th 和Tp ,判断哪个矩阵性能更好。
为什么?>> H=hilb(5);>> P=pascal(5);>> Hp=det(P);>> Hh=det(H);>> Th=cond(H,2)>> Tp=cond(P,2)3. 建立一个55⨯矩阵,求它的行列式值、迹、秩和范数。
>> A=rand(5);>> det(A);>> trace(A);>> rank(A);>> norm(A,1);>> norm(A,2);>> norm(A,inf);4. 已知 2961820512885A -⎡⎤⎢⎥=⎢⎥⎢⎥-⎣⎦求A 的特征值及特征向量。
>> A=[-29 6 18;20 5 12;-8 8 5];>> [V,D]=eig(A)V =0.7130 0.2803 0.2733-0.6084 -0.7867 0.87250.3487 0.5501 0.4050D =-25.3169 0 00 -10.5182 00 0 16.83515. 下面是一个线性方程组1231/21/31/40.951/31/41/50.671/41/51/60.52x x x ⎡⎤⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎣⎦(1)求方程的解。
matlab习题及答案
matlab习题及答案2. ⽤MATLAB 语句输⼊矩阵A 和B3.假设已知矩阵A ,试给出相应的MATLAB 命令,将其全部偶数⾏提取出来,赋给B 矩阵,⽤magic(8)A =命令⽣成A 矩阵,⽤上述命令检验⼀下结果是不是正确。
4.⽤数值⽅法可以求出∑=++++++==6363622284212i i S ,试不采⽤循环的形式求出和式的数值解。
由于数值⽅法是采⽤double 形式进⾏计算的,难以保证有效位数字,所以结果不⼀定精确。
试采⽤运算的⽅法求该和式的精确值。
5.选择合适的步距绘制出下⾯的图形。
(1))/1sin(t ,其中)1,1(-∈t ;(2))tan(sin )sin(tan t t -,其中),(ππ-∈t6. 试绘制出⼆元函数2222)1(1)1(1),(yx yx y x f z ++++-==的三维图和三视图7. 试求出如下极限。
(1)xxxx 1)93(lim +∞→;(2)11lim0-+→→xy xy y x ;(3)22)()cos(1lim222200y x y x ey x y x +→→++-8. 已知参数⽅程-==tt t y t x sin cos cos ln ,试求出x y d d 和3/22d d π=t x y9. 假设?-=xyt t e y x f 0d ),(2,试求222222y fy x f x f y x ??+-?? 10. 试求出下⾯的极限。
(1)-++-+-+-∞→1)2(1161141121lim 2222n n ;(2))131211(lim 2222ππππn n n n n n n ++++++++∞→ 11. 试求出以下的曲线积分。
(1)?+ls y x d )(22,l 为曲线)sin (cos t t t a x +=,)cos (sin t t t a y -=,)20(π≤≤t 。
(2)?-+++ly y y xe x e yx )dy 2(xy d )(33,其中l 为22222c y b x a =+正向上半椭圆。
matlab试题及答案
matlab试题及答案# MATLAB试题及答案一、选择题1. MATLAB的基本数据单位是:A. 矩阵B. 向量C. 标量D. 数组答案:A2. 下列哪个命令可以用来绘制函数图形?A. `plot`B. `graph`C. `draw`D. `chart`答案:A3. MATLAB中,以下哪个是正确的矩阵转置操作?A. `transpose(A)`B. `A'`C. `A^T`D. `flip(A)`答案:B二、简答题1. 简述MATLAB中矩阵的基本操作。
答案:在MATLAB中,矩阵是最基本的数据结构,可以进行加、减、乘、除等基本运算。
矩阵的创建可以使用方括号`[]`,例如`A = [1 2;3 4]`。
矩阵的转置使用单引号`'`,例如`A'`。
矩阵的求逆使用`inv`函数,例如`inv(A)`。
2. MATLAB中如何实现循环结构?答案:MATLAB中实现循环结构主要有两种方式:`for`循环和`while`循环。
`for`循环用于已知迭代次数的情况,例如:```matlabfor i = 1:5disp(i);end````while`循环用于迭代次数未知的情况,例如:```matlabi = 1;while i <= 5disp(i);i = i + 1;end```三、计算题1. 给定矩阵A和B,请计算它们的乘积C,并求C的行列式。
A = [1 2; 3 4]B = [5 6; 7 8]答案:首先计算矩阵乘积C:```matlabC = A * B;```然后计算C的行列式:```matlabdetC = det(C);```结果为:```matlabC = [19 22; 43 50]detC = -16```2. 编写一个MATLAB函数,计算并返回一个向量的范数。
答案:```matlabfunction norm_value = vector_norm(v)norm_value = norm(v);end```四、编程题1. 编写一个MATLAB脚本,实现以下功能:- 随机生成一个3x3的矩阵。
(完整版)第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的运算方法实验内容:2.1 在Matlab命令窗口输入:H1=ones(3,2) H2=zeros(2,3) H3=eye(4)观察以上各输入结果,并在每式的后面标注其含义。
>> format compact>> H1=ones(3,2),disp('3行2列的全1矩阵') H1 =1 11 11 13行2列的全1矩阵>> H2=zeros(2,3),disp('2行3列的全零矩阵') H2 =0 0 00 0 02行3列的全零矩阵>> H3=eye(4),disp('4阶的单位矩阵') H3 =1 0 0 00 1 0 00 0 1 00 0 0 14阶的单位矩阵2.2 已知123456⎡⎤=⎢⎥⎣⎦Q,[]789=P,1⎡⎤=⎢⎥⎣⎦R,3=S,试把这四个矩阵组合为一个大矩阵,看看有几种组合方式?8>> format compact>> Q=[1 2 3;4 5 6];P=[7 8 9];R=[1;0]; S=3; >> [Q,R;P,S]ans =1 2 3 14 5 6 07 8 9 3>> [R,Q;P,S]ans =1 12 30 4 5 67 8 9 3>> [Q,R;S,P]ans =1 2 3 14 5 6 03 7 8 9>> [R,Q;S,P]ans =1 12 30 4 5 63 7 8 9 >> [S,P;R,Q]ans =3 7 8 91 12 30 4 5 6 >> [S,P;Q,R]ans =3 7 8 91 2 3 14 5 6 0 >> [P,S;R,Q]ans =7 8 9 31 12 30 4 5 6 >> [P,S;Q,R]ans =7 8 9 31 2 3 14 5 6 02.4 建立一个字符串向量,删除其中的大写字母。
matlab课后习题答案
习题二1.如何理解“矩阵是MATLAB最基本的数据对象”?答:因为向量可以看成是仅有一行或一列的矩阵,单个数据(标量)可以看成是仅含一个元素的矩阵,故向量和单个数据都可以作为矩阵的特例来处理。
因此,矩阵是MATLAB最基本、最重要的数据对象。
2.设A和B是两个同维同大小的矩阵,问:(1)A*B和A.*B的值是否相等?答:不相等。
(2)A./B和B.\A的值是否相等?答:相等。
(3)A/B和B\A的值是否相等?答:不相等。
(4)A/B和B\A所代表的数学含义是什么?答:A/B等效于B的逆右乘A矩阵,即A*inv(B),而B\A等效于B矩阵的逆左乘A矩阵,即inv(B)*A。
3.写出完成下列操作的命令。
(1)将矩阵A第2~5行中第1, 3, 5列元素赋给矩阵B。
答:B=A(2:5,1:2:5); 或B=A(2:5,[1 3 5])(2)删除矩阵A的第7号元素。
答:A(7)=[](3)将矩阵A的每个元素值加30。
答:A=A+30;(4)求矩阵A的大小和维数。
答:size(A);ndims(A);(5)将向量t的0元素用机器零来代替。
答:t(find(t==0))=eps;(6)将含有12个元素的向量x转换成34矩阵。
答:reshape(x,3,4);(7)求一个字符串的ASCII码。
答:abs(‘123’); 或double(‘123’);(8)求一个ASCII码所对应的字符。
答:char(49);4.下列命令执行后,L1、L2、L3、L4的值分别是多少?A=1:9;B=10-A;...L1=A==B;L2=A<=5;L3=A>3&A<7;L4=find(A>3&A<7);答:L1的值为[0, 0, 0, 0, 1, 0, 0, 0, 0]L2的值为[1, 1, 1, 1, 1, 0, 0, 0, 0]L3的值为[0, 0, 0, 1, 1, 1, 0, 0, 0]L4的值为[4, 5, 6]5.已知完成下列操作:(1)取出A的前3行构成矩阵B,前两列构成矩阵C,右下角32⨯子矩阵构成矩阵D,B与C 的乘积构成矩阵E。
实验二MATLAB的矩阵操作_参考答案
1
5
>> A(k)
ans =
23
10
(2)取出A前3行构成矩阵B,前两列构成矩阵C,右下角 子矩阵构成矩阵D,B与C的乘积构成矩阵E.
>> B=A([1,2,3],:)
B =
23.0000 10.0000 -0.7780 0
41.0000 -45.0000 65.0000 5.0000
32.0000 5.0000 0 32.0000
y =
-128.4271
2.已知 ,
求下列表达式的值:
(1) , (其中I为单位矩阵)
A=[-1,5,-4;0,7,8;3,61,7]
B=[8,3,-1;2,5,3;-3,2,0]
>> A+6*B
ans =
47 23 -10
12 37 26
-15 73 7
&
ans =
-1.2768 -0.4743 0.2411
2.1229 1.3173 -0.2924
3.已知
完成下列操作
(1)输出A在[10,25]范围内的全部元素
A=[23,10,-0.778,0;41,-45,65,5;32,5,0,32;6,-9.54,54,3.14]
>> k=find(A>=10&A<=25)
(2)
(3)
2.已知 ,
求下列表达式的值:
(1) , (其中I为单位矩阵)
(2)A*B、A.*B和B*A
(3)A/B及B/A
3.已知
完成下列操作
(1)输出A在[10,25]范围内的全部元素
(2)取出A前3行构成矩阵B,前两列构成矩阵C,右下角 子矩阵构成矩阵D,B与C的乘积构成矩阵E.
matlab课后习题答案
习题二之阳早格格创做1.怎么样明白“矩阵是MATLAB最基础的数据对于象”?问:果为背量不妨瞅成是仅有一止或者一列的矩阵,单个数据(标量)不妨瞅成是仅含一个元素的矩阵,故背量战单个数据皆不妨动做矩阵的惯例去处理.果此,矩阵是MATLAB最基础、最要害的数据对于象.2.设A战B是二个共维共大小的矩阵,问:(1)A*B战A.*B的值是可相等?问:没有相等.(2)A./B战B.\A的值是可相等?问:相等.(3)A/B战B\A的值是可相等?问:没有相等.(4)A/B战B\A所代表的数教含意是什么?问:A/B等效于B的顺左乘A矩阵,即A*inv(B),而B\A等效于B矩阵的顺左乘A矩阵,即inv(B)*A.3.写出完毕下列支配的下令.(1)将矩阵A第2~5止中第1, 3, 5列元素赋给矩阵B.问:B=A(2:5,1:2:5); 或者B=A(2:5,[1 3 5])(2)简略矩阵A的第7号元素.问:A(7)=[](3)将矩阵A的每个元素值加30.问:A=A+30;(4)供矩阵A的大小战维数.问:size(A);ndims(A);(5)将背量t的0元素用呆板整去代替.问:t(find(t==0))=eps;(6)将含有12个元素的背量x变换成34 矩阵.问:reshape(x,3,4);(7)供一个字符串的ASCII码.问:abs(‘123’); 或者double(‘123’);(8)供一个ASCII码所对于应的字符.问:char(49);4.下列下令真止后,L1、L2、L3、L4的值分别是几?A=1:9;B=10-A;...L1=A==B;L2=A<=5;L3=A>3&A<7;L4=find(A>3&A<7);问:L1的值为[0, 0, 0, 0, 1, 0, 0, 0, 0]L2的值为[1, 1, 1, 1, 1, 0, 0, 0, 0]L3的值为[0, 0, 0, 1, 1, 1, 0, 0, 0]L4的值为[4, 5, 6]5.已知完毕下列支配:(1)与出A的前3止形成矩阵B,前二列形成矩阵C,左下角32⨯子矩阵形成矩阵D,B与C的乘积形成矩阵E.问:B=A(1:3,:);C=A(:,1:2);D=A(2:4,3:4);E=B*C;(2)分别供E<D、E&D、E|D、~E|~D战find(A>=10&A<25).问:E<D=010001⎡⎤⎢⎥⎢⎥⎢⎥⎣⎦,E&D=110111⎡⎤⎢⎥⎢⎥⎢⎥⎣⎦,E|D=111111⎡⎤⎢⎥⎢⎥⎢⎥⎣⎦,~E|~D=001000⎡⎤⎢⎥⎢⎥⎢⎥⎣⎦find(A>=10&A<25)=[1; 5].6.当A=[34, NaN, Inf, -Inf, -pi, eps, 0]时,分解下列函数的真止截止:all(A),any(A),isnan(A),isinf(A),isfinite(A).问:all(A)的值为0any(A)的值为1isnan(A)的值为[0, 1, 0, 0, 0, 0, 0]isinf(A)的值为[0, 0, 1, 1, 0, 0, 0]isfinite(A)的值为[1, 0, 0,0, 1, 1, 1]7.用结构体矩阵去保存5名教死的基础情况数据,每名教死的数据包罗教号、姓名、博业战6门课程的结果.问:student(1).id='0001';student(1).name='Tom';student(1).major='computer';student(1).grade=[89,78,67,90,86,85];8.修坐单元矩阵B并回问有闭问题.B{1,1}=1;B{1,2}='Brenden';B{2,1}=reshape(1:9,3,3);B{2,2}={12,34,2;54,21,3;4,23,67};(1)size(B)战ndims(B)的值分别是几?问:size(B)的值为2,2.ndims(B)的值为2.(2)B(2)战B(4)的值分别是几?问:B(2)=147258369⎡⎤⎢⎥⎢⎥⎢⎥⎣⎦,B(4)=[12][34][2][54][21][3][4][23][67]⎡⎤⎢⎥⎢⎥⎢⎥⎣⎦(3)B(3)=[]战B{3}=[]真止后,B的值分别是几?问:当真止B(3)=[]后,B={1, [1, 4, 7; 2, 5, 8; 3, 6, 9], {12, 34, 2; 54, 21, 3; 4, 23, 67}}当真止B{3}=[]后,B={1,[]; [1, 4, 7; 2, 5, 8; 3, 6, 9],{12, 34, 2; 54, 21, 3; 4, 23, 67}}习题三1.写出完毕下列支配的下令.(1)修坐3阶单位矩阵A.问:A=eye(3);(2)修坐5×6随机矩阵A,其元素为[100,200]范畴内的随机整数.问:round(100+(200-100)*rand(5,6));(3)爆收均值为1,圆好为0.2的500个正态分散的随机数.问:1+sqrt(0.2)*randn(5,100);(4)爆收战A共样大小的幺矩阵.问:ones(size(A));(5)将矩阵A对于角线的元素加30.问:A+eye(size(A))*30;(6)从矩阵A提与主对于角线元素,并以那些元素形成对于角阵B.问:B=diag(diag(A));2.使用函数,真止圆阵左旋90o或者左旋90o的功能.比圆,本矩阵为A,A左旋后得到B,左旋后得到C.问:B=rot90(A);C=rot90(A,-1);3.修坐一个圆阵A,供A的顺矩阵战A的止列式的值,并考证A与A-1是互顺的.问:A=rand(3)*10;B=inv(A);C=det(A);先估计B*A,再估计A*B,由估计可知B*A=A*B,即A·A-1=A-1·A是互顺.4.供底下线性圆程组的解.问:A=[4,2,-1;3,-1,2;12,3,0];b=[2;10;8];x=inv(A)*b圆程组的解为x=6.000026.666727.3333 -⎡⎤⎢⎥⎢⎥⎢⎥⎣⎦5.供下列矩阵的主对于角线元素、上三角阵、下三角阵、秩、范数、条件数战迹.(1)112351423052111509A-⎡⎤⎢⎥-⎢⎥=⎢⎥⎢⎥⎣⎦(2)0.434328.9421B⎡⎤=⎢⎥-⎣⎦问:(1)与主对于角线元素:diag(A);上三角阵:triu(A);下三角阵:tril(A);秩:rank(A);范数:norm(A,1); 或者 norm(A);或者 norm(A,inf);条件数:cond(A,1); 或者 cond(A,2); 或者 cond(A,inf)迹:trace(A);(2)【请参照(1)】.6.供矩阵A的特性值战相映的特性背量.问:[V,D]=eig(A);习题四1.从键盘输进一个4位整数,按如下准则加稀后输出.加稀准则:每位数字皆加上7,而后用战除以10的余数与代该数字;再把第一位与第三位接换,第二位与第四位接换.问:a=input('请输进4位整数:');A=[a/1000,a/100,a/10,a];A=fix(rem(A,10));A=rem(A+7,10);b=A(3)*1000+A(4)*100+A(1)*10+A(2);disp(['加稀后的值为:',num2str(b)]);2.分别用if语句战switch语句真止以下估计,其中a、b、c 的值从键盘输进.问:(1) 用if语句真止估计:a=input('请输进a的值:');b=input('请输进b的值:');c=input('请输进c的值:');x=input('请输进x的值:');y=a*x^2+b*x+c;endy=a*((sin(b))^c)+x;endy=log(abs(b+c/x));enddisp(['y=',num2str(y)]);(2) 用switch语句真止估计:a=input('请输进a的值:');b=input('请输进b的值:');c=input('请输进c的值:');x=input('请输进x的值:');switch fix(x/0.5)case {1,2}y=a*x^2+b*x+c;case num2cell(3:6)y=a*((sin(b))^c)+x;case num2cell(7:10)y=log(abs(b+c/x));enddisp(['y=',num2str(y)]);3.爆收20个二位随机整数,输出其中小于仄衡值的奇数.问:A=fix(10+89*rand(1,20));sum=0;for i=1:20sum=sum+A(i);endB=A(find(A<(sum/20)));C=B(find(rem(B,2)==0));disp(C);4. 输进20个数,供其中最大数战最小数.央供分别用循环结媾战调用MATLAB 的max 函数、min 函数去真止. 问:(1) 用循环结构真止:v_max=0;v_min=0;for i=1:20x=input(['请输进第', num2str(i), '数:']);if x>v_maxv_max=x;end;if x<v_minv_min=x;end;enddisp(['最大数为:', num2str(v_max)]);disp(['最小数为:', num2str(v_min)]);(2) 用max 函数、min 函数真止:for i=1:5A(i)=input(['请输进第', num2str(i), '数:']);enddisp(['最大数为:', num2str(max(A))]);disp(['最小数为:', num2str(min(A))]);5. 已知:236312222s =+++++,分别用循环结媾战调用MATLAB 的sum 函数供s 的值.问:(1) 用循环结构真止:s=0;for i=0:63s=s+2^i;ends(2) 调用sum函数真止:s=0:63;s=2.^s;sum(s)6.当n分别与100、1000、10000时,供下列各式的值.(1)111111(1)(ln2) 234nn+-+-++-+=(2)1111() 3574π-+-+=(3) 11111() 4166443n+++++=(4)224466(2)(2)133557(21)(21)2n nn nπ⎛⎫⨯⨯⨯⨯⎛⎫⎛⎫⎛⎫⎛⎫=⎪⎪⎪⎪ ⎪⨯⨯⨯-⨯+⎝⎭⎝⎭⎝⎭⎝⎭⎝⎭央供分别用循环结媾战背量运算(使用sum或者prod函数)去真止.问:(1) 用循环结构真止:sum=0;for k=1:100sum=sum+(-1)^(k+1)/k;endsum使用sum函数:x=[];for k=1:10000x=[x, (-1)^(k+1)/k];endsum(x)(2)用循环结构真止:sum=0;for k=1:100sum=sum+(-1)^(k+1)/(2*k-1);endsum使用sum函数:x=[];for k=1:100x=[x, (-1)^(k+1)/(2*k-1)];endsum(x)(3)用循环结构真止:sum=0;for k=1:100sum=sum+1/(4^k);endsum使用sum函数真止:x=[];for k=1:100x=[x, 1/(4^k)];endsum(x)(4)用循环结构真止:t=1;for k=1:100t=t*(((2*k)*(2*k))/((2*k-1)*(2*k+1)));endt使用prod函数真止:x=[];for k=1:100x=[x, ((2*k)*(2*k))/((2*k-1)*(2*k+1))];endprod(x)7. 编写一个函数文献,供小于任性自然数n的斐波那契(Fibnacci)数列各项.斐波那契数列定义如下:问:function x=fibnacci(n)for i=1:nif i<=2x(i)=1;elsex(i)=x(i-1)+x(i-2);endend8.编写一个函数文献,用于供二个矩阵的乘积战面乘,而后正在下令文献中调用该函数.问:函数文献myfnc.m:function [x, y]=myfnc(A, B)tryx=A*B;catchx=[];endy=A.*B;下令文献myexe.m:A=input('请输进矩阵A:');B=input('请输进矩阵B:');[x, y]=myfnc(A, B);if length(x)==0display('二矩阵的维数没有匹配,无法举止乘积运算!');disp('矩阵A 战矩阵B 的乘积为:'); xenddisp('矩阵A 战矩阵B 的面乘为:'); y9. 先用函数的递归调用定义一个函数文献供1n m i i =∑,而后调用该函数文献供100501021111k k k k k k ===++∑∑∑. 问:函数文献myfnc.m :function sum=myfnc(n, m)if n<=1sum=1;elsesum= myfnc (n-1, m)+n^m;end正在下令窗心中调用myfnc.m 文献,估计100501021111k k k k k k ===++∑∑∑: sum=myfnc(100, 1)+myfnc(50, 2)+myfnc(10,-1) 10.写出下列步调的输出截止.① s=0;a=[12,13,14;15,16,17;18,19,20;21,22,23]; for k=afor j=1:4if rem(k(j),2)~=0s=s+k(j);endendends问:真止截止为②下令文献exe.m真止后的截止为:x =41220y=2 4 6。
MATLAB习题答案
MATLAB习题答案习题二1.如何理解“矩阵就是MATLAB最基本的数据对象”?答:因为向量可以瞧成就是仅有一行或一列的矩阵,单个数据(标量)可以瞧成就是仅含一个元素的矩阵,故向量与单个数据都可以作为矩阵的特例来处理。
因此,矩阵就是MA TLAB最基本、最重要的数据对象。
2.设A与B就是两个同维同大小的矩阵,问:(1)A*B与A、*B的值就是否相等?答:不相等。
(2)A、/B与B、\A的值就是否相等?答:相等。
(3)A/B与B\A的值就是否相等?答:不相等。
(4)A/B与B\A所代表的数学含义就是什么?答:A/B等效于A的逆左乘B矩阵,即inv(A)*B,而B/A等效于A矩阵的逆右乘B矩阵,即B*inv(A)。
3.写出完成下列操作的命令。
(1)将矩阵A第2~5行中第1, 3, 5列元素赋给矩阵B。
答:B=A(2:5,1:2:5);(2)删除矩阵A的第7号元素。
答:A(7)=[](3)将矩阵A的每个元素值加30。
答:A=A+30;(4)求矩阵A的大小与维数。
答:size(A);ndims(A);(5)将向量t的0元素用机器零来代替。
答:t(find(t==0))=eps;矩阵。
(6)将含有12个元素的向量x转换成34答:reshape(x,3,4);(7)求一个字符串的ASCII码。
答:abs(‘123’); 或double(‘123’);(8)求一个ASCII码所对应的字符。
答:char(49);4.下列命令执行后,L1、L2、L3、L4的值分别就是多少?A=1:9;B=10-A;、、、L1=A==B;L2=A<=5;L3=A>3&A<7;L4=find(A>3&A<7);答:L1的值为(0, 0, 0, 0, 1, 0, 0, 0, 0)L2的值为(1, 1, 1, 1, 1, 0, 0, 0, 0)L3的值为(0, 0, 0, 1, 1, 1, 0, 0, 0)L4的值为(4, 5, 6)5.已知23100.7780414565532503269.5454 3.14A --??=-?? 完成下列操作:(1) 取出A 的前3行构成矩阵B,前两列构成矩阵C,右下角32?子矩阵构成矩阵D,B 与C 的乘积构成矩阵E 。
matlab习题与答案
matlab习题与答案
MATLAB习题与答案
MATLAB是一种强大的数学软件,广泛应用于工程、科学和金融等领域。
通过MATLAB,用户可以进行数据分析、图像处理、模拟建模等多种操作。
为了帮
助大家更好地掌握MATLAB的应用,我们为大家准备了一些习题与答案,希望
能够帮助大家更好地理解和掌握MATLAB的使用。
习题一:编写一个MATLAB程序,实现对给定矩阵的转置操作。
解答:可以使用MATLAB中的transpose函数来实现矩阵的转置操作。
例如,
对于一个3x3的矩阵A,可以使用以下代码实现转置操作:
A = [1 2 3; 4 5 6; 7 8 9];
B = transpose(A);
习题二:编写一个MATLAB程序,实现对给定矩阵的逆矩阵计算。
解答:可以使用MATLAB中的inv函数来实现对矩阵的逆矩阵计算。
例如,对
于一个3x3的矩阵A,可以使用以下代码实现逆矩阵计算:
A = [1 2 3; 4 5 6; 7 8 9];
B = inv(A);
习题三:编写一个MATLAB程序,实现对给定矩阵的特征值和特征向量计算。
解答:可以使用MATLAB中的eig函数来实现对矩阵的特征值和特征向量计算。
例如,对于一个3x3的矩阵A,可以使用以下代码实现特征值和特征向量计算:A = [1 2 3; 4 5 6; 7 8 9];
[V, D] = eig(A);
通过以上习题与答案的学习,相信大家对MATLAB的应用已经有了更深入的了
解。
希望大家能够多加练习,不断提升自己的MATLAB技能,为今后的工作和学习打下坚实的基础。
MatLab(数学矩阵)练习册答案
MatLab 练习册(1) 参考答案1, (5*2+1.3-0.8)*10^2/25 答案:422,y =23log )10sin(4)43.0(2+⋅+-e π 答案:2.2618sin(10*pi)*exp(-0.3+4^2)+log(23)/log(4)3,z = 10*sin(pi/3)* ...cos(pi/3) 答案:4.33014,x = sin(223/3), y = x^2,z = y*10 ;求x+2y-5z 答案:-37.60255,i e z i z i z ⋅==+=π23215,2,72,计算3221z z z z z += 答案:-2.1379 + 1.6552i z1=2+7*iz2=2*iz3=5*exp(2*pi*i)z=(z1*z2)/(z2+z3)6, 建立起始值=3,增量值=5.5,终止值=44的一维数组x 答案:(填写程序语句) x=(3:5.5:44)7, 建立等差一维数组x :首项为0,末项为π,项数为15 答案:(填写程序语句) x=linspace(0,pi,15)8, 计算行列式的值187624323=A 答案:-8A = [3,2,3; 4,2,6; 7,8,1]det(A)9, 矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=187624323A ,矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=333222111B ;分别求出A x B 及A 与B 中对应元素之间的乘积. 答案:A = [3,2,3; 4,2,6; 7,8,1]B = [1,1,1; 2,2,2; 3,3,3]A*B16 16 1626 26 2626 26 26A.*B3 2 38 4 1221 24 310,写出计算 Sin(30o)的程序语句.答案:(填写程序语句) sin(pi*30/180) 或 sin(pi/6)11, ,计算f(2), f(1)f(2)+f2(3) 答案:x=2f2=(x^3 - 2*x^2 + x - 6.3)/(x^2 + 0.05*x - 3.14)f2 =-4.4792 x=1f1=(x^3 - 2*x^2 + x - 6.3)/(x^2 + 0.05*x - 3.14)x=3f3=(x^3 - 2*x^2 + x - 6.3)/(x^2 + 0.05*x - 3.14)f1*f2+f3^2-12.6023MatLab 练习册(2)参考答案1,在[0,4pi]画sin(x),cos(x)(在同一个图象中); 其中cos(x)图象用红色小圆圈画.并在函数图上标注“y=sin(x)”, “y=cos(x)” ,x轴,y轴,标题为“正弦余弦函数图象”.答案:x=linspace(0,4*pi,100);y=sin(x);plot(x,y);gtext('y = sin(x)');% 图形注解,注意要用鼠标定位hold on;y=cos(x);plot(x,y,'ro');gtext ('y = cos(x)');% 图形注解xlabel('x轴'); % x轴注解ylabel('y轴'); % y轴注解title('正弦余弦函数图象'); % 图形标题2, 画出2222)sin(y x y x z ++=所表示的三维曲面。
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 的数组平方和矩阵平方,并观察其结果。
matlab课后习题答案
习题二1.如何理解“矩阵是MATLAB最基本的数据对象”?答:因为向量可以看成是仅有一行或一列的矩阵,单个数据(标量)可以看成是仅含一个元素的矩阵,故向量和单个数据都可以作为矩阵的特例来处理。
因此,矩阵是MATLAB最基本、最重要的数据对象。
2.设A和B是两个同维同大小的矩阵,问:(1)A*B和A.*B的值是否相等?答:不相等。
(2)A./B和B.\A的值是否相等?答:相等。
(3)A/B和B\A的值是否相等?答:不相等。
(4)A/B和B\A所代表的数学含义是什么?答:A/B等效于B的逆右乘A矩阵,即A*inv(B),而B\A等效于B矩阵的逆左乘A矩阵,即inv(B)*A。
3.写出完成下列操作的命令。
(1)将矩阵A第2~5行中第1, 3, 5列元素赋给矩阵B。
答:B=A(2:5,1:2:5); 或B=A(2:5,[1 3 5])(2)删除矩阵A的第7号元素。
答:A(7)=[](3)将矩阵A的每个元素值加30。
答:A=A+30;(4)求矩阵A的大小和维数。
答:size(A);ndims(A);(5)将向量t的0元素用机器零来代替。
答:t(find(t==0))=eps;(6)将含有12个元素的向量x转换成34矩阵。
答:reshape(x,3,4);(7)求一个字符串的ASCII码。
答:abs(‘123’); 或double(‘123’);(8)求一个ASCII码所对应的字符。
答:char(49);4.下列命令执行后,L1、L2、L3、L4的值分别是多少?A=1:9;B=10-A;...L1=A==B;L2=A<=5;L3=A>3&A<7;L4=find(A>3&A<7);答:L1的值为[0, 0, 0, 0, 1, 0, 0, 0, 0]L2的值为[1, 1, 1, 1, 1, 0, 0, 0, 0]L3的值为[0, 0, 0, 1, 1, 1, 0, 0, 0]L4的值为[4, 5, 6]5.已知完成下列操作:(1)取出A的前3行构成矩阵B,前两列构成矩阵C,右下角32⨯子矩阵构成矩阵D,B 与C的乘积构成矩阵E。
matlab习题五答案
matlab习题五答案Matlab习题五答案Matlab是一款强大的数学软件,被广泛应用于科学计算、数据分析和工程设计等领域。
在学习Matlab的过程中,习题是不可或缺的一部分,通过解答习题可以帮助我们巩固所学的知识。
本文将给出一些常见的Matlab习题的答案,希望能对大家的学习有所帮助。
1. 矩阵运算在Matlab中,矩阵运算是一项基本的操作。
假设有两个矩阵A和B,分别为3行2列和2行3列的矩阵,我们可以使用以下代码进行矩阵相乘和相加的运算:```matlabA = [1 2; 3 4; 5 6];B = [7 8 9; 10 11 12];C = A * B; % 矩阵相乘D = A + B; % 矩阵相加```2. 绘制函数图像Matlab提供了丰富的绘图函数,可以用来绘制各种类型的图像。
例如,我们可以使用`plot`函数来绘制一个函数的图像。
假设要绘制函数y = sin(x)在区间[0,2π]上的图像,可以使用以下代码:```matlabx = linspace(0, 2*pi, 100); % 生成一个包含100个点的等差数列y = sin(x);xlabel('x');ylabel('y');title('y = sin(x)');```3. 数据拟合在实际应用中,我们常常需要通过已知的数据点来拟合一个函数。
Matlab提供了`polyfit`函数可以用来进行多项式拟合。
假设有一组数据点(x, y),我们要拟合一个二次多项式,可以使用以下代码:```matlabx = [1 2 3 4 5];y = [2 3 5 7 9];p = polyfit(x, y, 2); % 二次多项式拟合```4. 图像处理Matlab还提供了丰富的图像处理函数,可以用来对图像进行各种操作。
例如,我们可以使用`imread`函数读取一张图像,然后使用`imrotate`函数对图像进行旋转。
第03章_MATLAB矩阵分析与处理_参考解答
(6) a=diag(A), B=diag(a)
a= 102 185 168 130 115
B= 102 0 0 0 0 0 185 0 0 0 0 0 168 0 0 0 0 0 130 0 0 0 0 0 115
2. 使用函数,实现方阵左旋 90° 或右旋 90° 的功能。例如,原矩阵为 A ,A 左旋后得到 B , 右旋后得到 C 。
或者用
x=inv(A)*b
x= -6.0000 26.6667 27.3333
5. 求下列矩阵的主对角线元素、上三角阵、下三角阵、秩、范数、条件数和迹。
⎡ 1 −1 2 3⎤
(1)
A
=
⎢ ⎢ ⎢
5 3
1 0
−4 2⎥⎥ 5 2⎥
⎢⎣11 15 0 9⎥⎦
(2)
B
=
⎡ 0.43 ⎢⎣−8.9
43 4
2⎤ 21⎥⎦
第 3 章:MATLAB 矩阵分析与处理
C= 321 654 987 12 11 10
3. 建立一个方阵 A ,求 A 的逆矩阵和 A 的行列式的值,并验证 A 与 A−1 是互逆的。 答:程序设计:
clear all; close all; clc; A=rand(3); B=inv(A)
B= -3.1874 2.5029 2.8322
0.5 ⎤ 0.25⎥⎥
2 ⎥⎦
A= 1.0000 1.0000 0.5000
1.0000 1.0000 0.2500
0.5000 0.2500 2.0000
[V,D]=eig(A)
V= 0.7212 -0.6863 -0.0937
0.4443 0.5621 -0.6976
0.5315 0.4615 0.7103
MATLAB矩阵处理_习题答案
第3章 MATLAB矩阵处理习题3一、选择题1.产生对角线上全为1,其余为0的2行3列矩阵的命令是()。
CA.ones(2,3) B.ones(3,2) C.eye(2,3) D.eye(3,2)2.建立3阶单位矩阵A的命令是()。
AA.A=eye(3) B.A=eye(3,1) C.A=eye(1,3) D.A=ones(3)3.产生和A同样大小的幺矩阵的命令是()。
BA.eye(size(A)) B.ones(size(A))C.size(eye(A)) D.size(ones(A))4.建立5×6随机矩阵A,其元素为[100,200]范围内的随机整数,相应的命令是()。
DA.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,相应的命令是()。
BA.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的操作中正确的是()。
DA.y=eig(A) B.y=reshape(A,[4 3 6 7])C.y=cond(A) D.y=sin(A)8.在命令行窗口中分别输入下列命令,对应输出结果正确的是()。
CA.命令x=[-2:2]',结果x=[-2 -1 0 1 2]B.命令x=zeros(1,2);x>0,结果ans=1C.命令y=diag(eye(3),1)',结果y=[0 0]D.命令5-10*rand(1,2),结果ans=[ ]9.将矩阵A对角线元素加30的命令是()。
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);。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 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.01
15.01
1A 第5题:
A=[1,1,;1,1,;,,2];
[X,D]=eig(A)。