MATLAB习题及答案Word下载.docx
《MATLAB习题及答案Word下载.docx》由会员分享,可在线阅读,更多相关《MATLAB习题及答案Word下载.docx(26页珍藏版)》请在冰豆网上搜索。
219
732
(2)按照a、b、c的列顺序组合成一个行矢量,即
[reshape(a,1,4),reshape(b,1,4),reshape(c,1,4)]
452778135692
6,将(x-6)(x-3)(x-8)展开为系数多项式的形式。
(应用poly,polyvalm)
expand((x-6)*(x-3)*(x-8))
x^3-17*x^2+90*x-144
法二:
p=[638]
p=
638
p1=poly(p)
p1=
1-1790-144
pp=poly2str(p1,'
x'
)
pp=
x^3-17x^2+90x-144
7,求解多项式x3-7x2+2x+40的根。
(应用roots)
a=[1-7240]
a=
1-7240
roots(a)
5.0000
4.0000
-2.0000
8,求解在x=8时多项式(x-1)(x-2)(x-3)(x-4)的值。
p=[1234]
1234
1-1035-5024
polyval(p1,8)
840
9,计算多项式
的微分和积分。
(应用polyder,polyint,poly2sym)
p=[4-12-1459];
polyder(p)
polyint(p)
16-36-285
0.8000-3.0000-4.66672.50009.00000
10,解方程组
。
(应用x=a\b)
a\b
7.4000
-0.2000
-1.4000
11,求欠定方程组
的最小范数解。
(应用pinv)
2474
9356
b=[8;
5]
b=
8
5
x=a\b
x=
-0.0943
0
1.1698
pinv(x)
-0.068500.84930
12,矩阵
,计算a的行列式和逆矩阵。
(应用det,inv)
det(a)
-64
inv(a)
-0.45310.6562-0.5937
0.7969-0.84370.9062
-0.20310.1562-0.0937
13,y=sin(x),x从0到2,x=0.02,求y的最大值、最小值、均值和标准差。
(应用max,min,mean,std)
x=0:
0.02*pi:
2*pi;
y=max(sin(x))
y=
1
y=min(sin(x))
-1
y=mean(sin(x))
2.2995e-017
y=std(sin(x))
0.7071
14,参照课件中例题的方法,计算表达式
的梯度并绘图。
(应用meshgrid,gradient,contour,holdon,quiver)
15,用符号函数法求解方程at2+b*t+c=0。
(应用solve)
solve('
a*t^2+b*t+c'
'
t'
1/2/a*(-b+(b^2-4*a*c)^(1/2))
1/2/a*(-b-(b^2-4*a*c)^(1/2))
16,用符号计算验证三角等式:
(应用syms,simple)
17,求矩阵
的行列式值、逆和特征根。
(应用syms,det,inv,eig)
symsa11a12a21a22
a=[a11a12;
a21a22]
[a11,a12]
[a21,a22]
det(a)
a11*a22-a12*a21
[a22/(a11*a22-a12*a21),-a12/(a11*a22-a12*a21)]
[-a21/(a11*a22-a12*a21),a11/(a11*a22-a12*a21)]
eig(a)
1/2*a11+1/2*a22+1/2*(a11^2-2*a11*a22+a22^2+4*a12*a21)^(1/2)
1/2*a11+1/2*a22-1/2*(a11^2-2*a11*a22+a22^2+4*a12*a21)^(1/2)
18,因式分解:
(应用syms,factor)
x
(x-1)*(x-2)*(x-3)*(x+1)
19,
,用符号微分求df/dx。
(应用syms,diff)
symsexpax
f=[ax^21/x;
exp^a*xlog(x)sin(x)]
f=
[a,x^2,1/x]
[exp^a*x,log(x),sin(x)]
diff(f)
[0,2*x,-1/x^2]
[exp^a,1/x,cos(x)]
20,符号函数绘图法绘制函数x=sin(3t)cos(t),y=sin(3t)sin(t)的图形,t的变化范围为[0,2]。
(应用syms,ezplot)
symst
ezplot(sin(3*t)*cos(t),sin(3*t)*sin(t),[0,2*pi])
21,绘制曲线
,x的取值范围为[-5,5]。
(应用plot)
clear
x=-5:
0.01:
5;
y=x.^3+x+1;
plot(x,y)
ezplot('
x^3+x+1'
[-5,5])
22,有一组测量数据满足
,t的变化范围为0~10,用不同的线型和标记点画出a=0.1、a=0.2和a=0.5三种情况下的曲线,在图中添加标题
,并用箭头线标识出各曲线a的取值,并添加标题
和图例框。
(应用plot,title,text,legend)
t=0:
0.5:
10;
>
y1=exp(-0.1*t);
y2=exp(-0.2*t);
y3=exp(-0.5*t);
plot(t,y1,'
-ob'
t,y2,'
:
*r'
t,y3,'
-.^g'
23,表中列出了4个观测点的6次测量数据,将数据绘制成为分组形式和堆叠形式的条形图。
第1次
第2次
第3次
第4次
第5次
第6次
观测点1
3
6
7
4
2
8
观测点2
观测点3
9
5
观测点4
y=[3696;
6774;
7323;
4252;
2487;
8744];
bar(y)
24,x=[6649715638],绘制饼图,并将第五个切块分离出来。
x=[6649715638]
6649715638
pie(x)
l=[00001]
l=
00001
pie(x,l)
25,用sphere函数产生球表面坐标,绘制不通明网线图、透明网线图、表面图和带剪孔的表面图。
(应用sphere,mesh,hiddenoff,surf,NaN)
26,编制一个解数论问题的函数文件:
取任意整数,若是偶数,则用2除,否则乘3加1,重复此过程,直到整数变为1。
27,有传递函数如下的控制系统,用Simulink建立系统模型,并对系统的阶跃响应进行仿真。
27,建立一个简单模型,用信号发生器产生一个幅度为2V、频率为0.5Hz的正弦波,并叠加一个0.1V的噪声信号,将叠加后的信号显示在示波器上并传送到工作空间。
28建立一个模拟系统,将摄氏温度转换为华氏温度(Tf=9/5Tc+32)。
f=input('
InputFahrenheittemperature:
'
);
c=5*(f-32)/9
然后在Matlab命令窗口输入华氏温度
答案:
a=[693;
275];
b=[241;
468];
a.*b
A=[492;
764;
357];
B=[372628]’;
X=A\B
X=
a=[123;
456;
789];
a.^2
x=[304560];
x1=x/180*pi;
sin(x1)
0.50000.70710.8660
cos(x1)
0.86600.70710.5000
tan(x1)
0.57741.00001.7321
cot(x1)
1.73211.00000.5774
a=[42;
57];
b=[71;
83];
c=[59;
62];
%
(1)
d=[a(:
)b(:
)c(:
)]
d=
%
(2)
e=[a(:
b(:
c(:
)]’
e=
或利用
(1)中产生的d
e=reshape(d,1,12)
ans=
a=[638];
pa=poly(a);
也可以用pa=poly([638])来替换1,2两行
ppa=poly2sym(pa)
ppa=
x^3-17*x^2+90*x-144
r=[1-7240];
p=roots(r)
p=poly([1234]);
polyvalm(p,8)
clear
f=sym('
4*x^4-12*x^3-14*x^2+5*x+9'
diff(f)
int(f)
16*x^3-36*x^2-28*x+5
4/5*x^5-3*x^4-14/3*x^3+5/2*x^2+9*x
a=[290;
3411;
226];
b=[1366]'
;
x=a\b
x=
a=[2474;
9356];
b=[85]'
x=pinv(a)*b
-0.2151
0.4459
0.7949
0.2707
a=[42-6;
754;
349];
ad=det(a)
ai=inv(a)
ad=
ai=
13y=sin(x),x从0到2,x=0.02,求y的最大值、最小值、均值和标准差。
x=0:
y=sin(x);
ymax=max(y)
ymin=min(y)
ymean=mean(y)
ystd=std(y)
ymax=
ymin=
ymean=
ystd=
v=-2:
0.2:
2;
[x,y]=meshgrid(v);
z=10*(x.^3-y.^5).*exp(-x.^2-y.^2);
[px,py]=gradient(z,.2,.2);
contour(x,y,z)
holdon
quiver(x,y,px,py)
holdoff
15,下面三种表示方法有什么不同的含义?
(1)f=3*x^2+5*x+2
(2)f='
3*x^2+5*x+2'
(3)x=sym('
f=3*x^2+5*x+2
表示在给定x时,将3*x^2+5*x+2的数值运算结果赋值给变量f,如果没有给定x则指示错误信息。
表示将字符串'
赋值给字符变量f,没有任何计算含义,因此也不对字符串中的内容做任何分析。
表示x是一个符号变量,因此算式f=3*x^2+5*x+2就具有了符号函数的意义,f也自然成为符号变量了。
16,用符号函数法求解方程at2+b*t+c=0。
r=solve('
a*t^2+b*t+c=0'
r=
[1/2/a*(-b+(b^2-4*a*c)^(1/2))]
[1/2/a*(-b-(b^2-4*a*c)^(1/2))]
17,用符号计算验证三角等式:
sin
(1)cos
(2)-cos
(1)sin
(2)=sin(1-2)
symsphi1phi2;
y=simple(sin(phi1)*cos(phi2)-cos(phi1)*sin(phi2))
y=
sin(phi1-phi2)
18,求矩阵
symsa11a12a21a22;
A=[a11,a12;
a21,a22]
AD=det(A)%行列式
AI=inv(A)%逆
AE=eig(A)%特征值
A=
[a11,a12]
[a21,a22]
AD=
a11*a22-a12*a21
AI=
[-a22/(-a11*a22+a12*a21),a12/(-a11*a22+a12*a21)]
[a21/(-a11*a22+a12*a21),-a11/(-a11*a22+a12*a21)]
AE=
[1/2*a11+1/2*a22+1/2*(a11^2-2*a11*a22+a22^2+4*a12*a21)^(1/2)]
[1/2*a11+1/2*a22-1/2*(a11^2-2*a11*a22+a22^2+4*a12*a21)^(1/2)]
19,因式分解:
symsx;
f=x^4-5*x^3+5*x^2+5*x-6;
factor(f)
(x-1)*(x-2)*(x-3)*(x+1)
20,
symsax;
f=[a,x^2,1/x;
exp(a*x),log(x),sin(x)];
df=diff(f)
df=
[0,2*x,-1/x^2]
[a*exp(a*x),1/x,cos(x)]
21,符号函数绘图法绘制函数x=sin(3t)cos(t),y=sin(3t)sin(t)的图形,t的变化范围为[0,2]。
symst
ezplot(sin(3*t)*cos(t),sin(3*t)*sin(t),[0,pi])
22,绘制曲线
x=-5:
y=x.^3+x+1;
plot(x,y)
23,有一组测量数据满足
title('
\ity\rm=e^{-\itat}'
FontSize'
12)
text(t(6),y1(6),'
\leftarrow\ita\rm=0.1'
11)
text(t(6),y2(6),'
\leftarrow\ita\rm=0.2'
text(t(6),y3(6),'
\leftarrow\ita\rm=0.5'
legend('
a=0.1'
a=0.2'
a=0.5'
25,表中列出了4个观测点的6次测量数据,将数据绘制成为分组形式和堆叠形式的条形图。
26,x=[6649715638],绘制饼图,并将第五个切块分离出来。
x=[6649715638];
L=[00001];
pie(x,L)
27,用sphere函数产生球表面坐标,绘制不通明网线图、透明网线图、表面图和带剪孔的表面图。
[x,y,z]=sphere(30);
mesh(x,y,z)
mesh(x,y,z),hiddenoff
surf(x,y,z)
z(18:
30,1:
5)=NaN*ones(13,5);
28,有一周期为4的正弦波上叠加了方差为0.1的正态分布的随机噪声的信号,用循环结构编制一个三点线性滑动平均的程序。
(提示:
①用0.1*randn(1,n)产生方差为0.1的正态分布的随机噪声;
②三点线性滑动平均就是依次取每三个相邻数的平均值作为新的数据,如x1
(2)=(x
(1)+x
(2)+x(3))/3,x1(3)=(x
(2)+x(3)+x(4))/3……)
pi/50:
4*pi;
n=length(t);
y=sin(t)+0.1*randn(1,n);
ya
(1)=y
(1);
fori=2:
n-1
ya(i)=sum(y(i-1:
i+1))/3;
end
ya(n)=y(n);
plot(t,y,'
c'
t,ya,'
r'
linewidth'
2)
29,编制一个解数论问题的函数文件:
functionc=collatz(n)
%collatz
%Classic“3n+1”Ploblemfromnumbertheory
c=n;
whilen>
1
ifrem(n,2)==0
n=n/2;
else
n=3*n+1;
c=[cn];
30,有传递函数如下的控制系统,用Simulink建立系统模