matlab作业习题集文档格式.docx
- 文档编号:19990143
- 上传时间:2023-01-13
- 格式:DOCX
- 页数:29
- 大小:386.78KB
matlab作业习题集文档格式.docx
《matlab作业习题集文档格式.docx》由会员分享,可在线阅读,更多相关《matlab作业习题集文档格式.docx(29页珍藏版)》请在冰豆网上搜索。
00
第二种:
form=1:
2
forn=1:
ifB(m,n)>
B(m,n)=0;
end
B
6、已知矩阵
,试求矩阵A的左右翻转矩阵,上下翻转矩阵,然后在工作空间中利用size命令查看矩阵A的大小。
(1)生成矩阵A
A=[1:
9];
A=reshape(A,3,3)
147
258
369
(2)左右翻转:
fliplr(A)
741
852
963
(3)上下翻转:
flipud(A)
(4)查看矩阵A的大小:
size(A)
33
7、已知矩阵
,试求其转置、逆、迹、特征值、特征向量和B对应的行列式的值。
B=[1:
4];
B=reshape(B,2,2)%生成矩阵B
13
24
B'
%矩阵转置
34
inv(B)%矩阵的逆运算
=trace(B)%矩阵的迹
a=
5
[x,y]=eig(B)%矩阵的特征值y,特征向量x
x=
y=
0
0
V=det(B)%矩阵的行列式
V=
-2
8、分别建立一个
阶的单位阵、随机阵和魔方阵。
A=eye(3)%生成3*3阶的单位矩阵A
100
010
001
B=rand(3)%生成3*3阶的随机矩阵B
C=magic(3)%生成3*3阶的魔方矩阵C
C=
816
357
492
9、已知多项式
,
。
试求两个多项式的和与乘积。
A=[12-2];
B=[11-31];
a=poly2sym(A),b=poly2sym(B)
a=
x^2+2*x-2
b=
x^3+x^2-3*x+1
c=a+b
c=
x^3+2*x^2-x-1
d=conv(A,B);
poly2sym(d)
ans=
x^5+3*x^4-3*x^3-7*x^2+8*x-2
10.复数
表达,及计算>
z1=3+4*i;
z2=1+2*i;
z3=2*exp(pi/6*i);
z=z1*z2/z3
z=
+
11、产生1×
5的均布随机数组,进行如下操作:
1)寻访数组的第三个元素;
2)寻访数组的第一、二、五个元素组成的子数组;
3)寻访前三个元素组成的子数组;
4)寻访除前2个元素外的全部其他元素。
rand('
state'
0)%产生的随机数都与第一次运行产生的相同
A=rand(1,5)%产生1×
5的均布随机数组
A(3)%寻访数组x的第三个元素
A([125])%寻访数组x的第一、二、五个元素组成的子数组
A(1:
3)%寻访前三个元素组成的子数组
A(3:
end)%寻访除前2个元素外的全部其他元素
12、试用两种方法用MATLAB计算
nthroot(-8,3)
-2
symsx
solve('
x^3+8'
x)
1-3^(1/2)*i
1+3^(1/2)*i
第三种:
x=-8;
sign(x)*abs(x).^(1/3)
13、求
的“商”及“余”多项式。
a=[102];
b=[14];
c=[11];
d=[1011];
e=conv(a,b);
f=conv(e,c);
[k,r]=deconv(f,d)%k是商,r是余式
k=
15
r=
00543
14、求方程x^4+7x^3+9x-20=0的全部根。
第一种方法:
p=[1709-20];
roots(p)
-
第二种方法:
compan(p)
-70-920
1000
0100
0010
eig(ans)
15、今有多项式P1(x)=x4-2x+1,P2(x)=x2+,要求先求得P(x)=P1(x)+P2(x),然后计算xi=*i各点上的P(xi)(i=0,1,2,…,5)值。
a=[100-21];
b=[14];
p1=poly2sym(a);
p2=poly2sym(b);
p=p1+p2
p=
x^4+x^2+2*x+1/2
P=sym2poly(p);
i=0:
5;
xi=*i;
polyval(P,xi)
16、已知一线性方程组如下所示:
,试求其结果。
A=[31-1;
124;
-145];
B=[];
B/A
习题二
1、编制一个函数,使得该函数能对输入的两个数值进行比较,并返回其中的最小值。
functiony=min(m,n)
ifm<
n
y=m;
elsey=n;
2、试编一个m程序,将一维数组x中的N个数按颠倒的次序重新存储。
如N=5,原来x为:
x=[13579]而经过颠倒处理后x中数据的次序应该为:
x=[97531]
functiontemp(x)
if(nargin==0)
error('
没有参数'
elseif(nargin>
1)
参数太多'
end
len=length(x);
fori=1:
len/2
tmp=x(i);
x(i)=x(len-i+1);
x(len-i+1)=tmp;
x
3、编制一个m程序,计算阶乘n!
=1×
2×
3×
…×
functiony=jiecheng(N)
ifN<
Nshouldbepositiveorzero'
ifN==0|N==1
y=1;
else
y=N*jiecheng(N-1);
4.利用循环语句进行程序设计:
假设定义m×
n的矩阵A。
判断矩阵A的第1列元素是否为0,若全为0,则从矩阵A中删除第1列
functionB=liu(A)
[m,n]=size(A);
b=0;
a=1;
whilea<
=m
ifA(a,1)==0
b=b+1;
a=a+1;
ifb==m
A(:
1)=[];
B=A;
else
5、利用循环语句进行程序设计:
在区间[-2,-]内,步长为,对函数y=f(x)=1+1/x求值,并列表。
将所得x值和y值分别存入向量r和s中。
function[r,s]=fun
a=0;
x=-2;
whilex<
=
y=1+1/x;
r(a)=x;
s(a)=y;
x=x+;
end
运行结果:
>
[r,s]=fun
s=
6、编程计算
编制m程序:
functionk=fun1(x)
k=0;
fori=0:
k=k+2^i;
计算:
fun(63)
+019
7.写一个MATLAB小程序,求出最小的n值,使得n!
realmax。
请问n的值是多少?
此时(n-1)!
的值又是多少?
functiony=findN01(realmax)
maxN=1000;
maxN
value=prod(1:
n);
ifvalue>
realmax
break;
fprintf('
n=%d\n'
n);
(n-1)!
=%d\n'
prod(1:
n-1));
习题三
1、用subplot命令在同一图形输出窗口中绘制以下4个函数的图形:
clear
subplot(2,2,1);
x=1:
3;
plot(x,x,'
-r*'
subplot(2,2,2);
x=-1:
1;
plot(x,x.*sin(x),'
subplot(2,2,3);
x=0:
;
plot(x,x.^2,'
subplot(2,2,4);
plot(x,tan(x),'
2、绘制曲线
在
区间上的阶梯图。
*pi:
5*pi;
y=exp*x).*sin(x);
plot(x,y);
axis([0,*pi,0,*pi]);
holdon
stairs(x,y,'
r'
3、试绘制以极坐标形式表示的图形:
,其中
的范围为
8*pi;
p=cos(5*x/4)+1/3;
polar(x,p,'
-r'
)
4、画出衰减振荡曲线
及其它的包络线
的取值范围是
t=0:
4*pi;
y0=exp(-t/3);
y=y0.*sin(3*t);
plot(t,y0,'
t,y,'
-b'
legend('
包络线'
'
衰减振荡曲线'
5、画出
所表示的三维曲面。
x=-8:
8;
y=-8:
m=sqrt(x.^2+y.^2);
z=sin(m)./m;
plot3(x,y,z,'
6、在[02π]范围内绘制二维曲线图y=sin(x)*cos(5x)。
2*pi;
y=sin(x).*cos(5*x);
plot(x,y,'
-rx'
。
7、在[02π]范围内绘制以Y轴为对数的二维曲线图。
y=|1000sin(4x)|+1
y=abs(1000*sin(4*x))+1;
semilogy(x,y,'
-*r'
8、绘制z=sin(x)*cos(y)的三维网格和三维曲面图,x,y变化范围均为[02π]。
x=[0:
2*pi];
y=[0:
z=sin(y'
)*cos(x);
mesh(x,y,z);
x-axis'
),ylabel('
y-axis'
),zlabel('
z-label'
y=0:
[x,y]=meshgrid(x,y);
z=sin(x).*cos(y);
surf(x,y,z);
9、用简短的MATLAB命令在一个图上绘制在0≤x≤7范围内的sin(2x)、
和
三条曲线,并将其一一标明。
7;
y=sin(2*x);
z=sin(x.^2);
m=cos(x.^2);
holdon
plot(x,z,'
'
plot(x,m,'
--'
sin(2x)'
sin(x^2)'
cos(x^2)'
holdoff
10、在极坐标系中绘制曲线
t=0:
r=exp(cos(t))-2*cos(4*t)+sin(t/12).^5;
polar(t,r,'
习题四
1、求矩阵
的行列式值、逆和特征根
symsa11a12a21a22;
A=[a11a12;
a21a22];
B=det(A)
a11*a22-a12*a21
inv(A)
[a22/(a11*a22-a12*a21),-a12/(a11*a22-a12*a21)]
[-a21/(a11*a22-a12*a21),a11/(a11*a22-a12*a21)]
[x,y]=eig(A)
[(a11/2+a22/2-(a11^2-2*a11*a22+a22^2+4*a12*a21)^(1/2)/2)/a21-a22/a21,(a11/2+a22/2+(a11^2-2*a11*a22+a22^2+4*a12*a21)^(1/2)/2)/a21-a22/a21]
[1,1]
[a11/2+a22/2-(a11^2-2*a11*a22+a22^2+4*a12*a21)^(1/2)/2,0]
[0,a11/2+a22/2+(a11^2-2*a11*a22+a22^2+4*a12*a21)^(1/2)/2]
2、验证积分
用matlab计算左边的:
symsAwtm;
Y=int('
A*exp(-w*t*i)'
t,-1*m/2,m/2)%
不知道在matlab中如何输入在这里就用m表示
Y=
(2*A*sin((m*w)/2))/w
右边化简即得证。
3、求
symstk;
s=symsum([t,k^3],t,0,t-1)
[(t*(t-1))/2,k^3*t]
symk;
s=symsum([1/(2*k-1)^2(-1)^k/k],k,1,inf)
[pi^2/8,-log
(2)]
4、求
、
symsaxt;
A=[a,t^3;
t*cos(x),log(x)];
diff(A,'
)%微分一次
[0,0]
[-t*sin(x),1/x]
2)%对表达式A微分2次
[-t*cos(x),-1/x^2]
5.求
symsabx;
A=[a*x,b*x.^2;
1/x,sin(x)];
int(A,x)
[(a*x^2)/2,(b*x^3)/3]
[log(x),-cos(x)]
6、求
symsx
y=int(1/log(t)'
t'
1,x)
diff(y,x)
7、求
线性方程组的解。
A=[1,1/2,1/2,-1;
11-11;
1-1/4-11;
-8-111];
B=[01001]'
A\B
8、求
的解。
symsx;
y=(x+2).^x-2;
S=solve(y,x)
S=
matrix([[]])
9、求方程组
关于
symsuyvzw;
m=u*y^2+v*z+w;
n=y+z+w;
q=solve(m,n,'
y'
z'
q=
y:
[2x1sym]
z:
(v+2*u*w+(v^2+4*u*w*v-4*u*w)^(1/2))/(2*u)-w
(v+2*u*w-(v^2+4*u*w*v-4*u*w)^(1/2))/(2*u)-w
-(v+2*u*w+(v^2+4*u*w*v-4*u*w)^(1/2))/(2*u)
-(v+2*u*w-(v^2+4*u*w*v-4*u*w)^(1/2))/(2*u)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- matlab 作业 习题集