Matlab基础与应用教程答案人民邮电出版社.docx

上传人:b****5 文档编号:5171256 上传时间:2022-12-13 格式:DOCX 页数:31 大小:108.19KB
下载 相关 举报
Matlab基础与应用教程答案人民邮电出版社.docx_第1页
第1页 / 共31页
Matlab基础与应用教程答案人民邮电出版社.docx_第2页
第2页 / 共31页
Matlab基础与应用教程答案人民邮电出版社.docx_第3页
第3页 / 共31页
Matlab基础与应用教程答案人民邮电出版社.docx_第4页
第4页 / 共31页
Matlab基础与应用教程答案人民邮电出版社.docx_第5页
第5页 / 共31页
点击查看更多>>
下载资源
资源描述

Matlab基础与应用教程答案人民邮电出版社.docx

《Matlab基础与应用教程答案人民邮电出版社.docx》由会员分享,可在线阅读,更多相关《Matlab基础与应用教程答案人民邮电出版社.docx(31页珍藏版)》请在冰豆网上搜索。

Matlab基础与应用教程答案人民邮电出版社.docx

Matlab基础与应用教程答案人民邮电出版社

第1章

一、思考题

4.

(1)B=A(2:

5,1:

2:

5)

(2)A(7)=[]

(3)A=A+30

(4)size(A)

(5)t(find(t==0))=eps

(6)t=reshape(x,3,4)

(7)abs('matlab')

(8)char(93)

5.A=[97,67,34,10;-78,75,65,5;32,5,-23,-59;0,-12,54,7]

(1)B=A(1:

3,:

C=A(:

1:

2)

D=A(2:

4,3:

4)

E=B*C

(2)A(find(A>=50&A<=100))

二、实验题

1.x=-74/180*pi;y=-27/180*pi;

sin(x*x+y*y)/sqrt(tan(abs(x+y)))+pi

2.a=-3.0:

0.1:

3.0;

exp(-0.3*a).*sin(a+0.3)

3.x=[2,4;-0.45,5];

log(x+sqrt(1+x.*x))/2

4.A=[3,54,2;34,-45,7;87,90,15];B=[1,-2,67;2,8,74;9,3,0];

(1)A*B

ans=

1294324197

7-407-1052

40259112489

A.*B

ans=

3-108134

68-360518

7832700

(2)A^3

ans=

-28917240246-4368

137883-25910127669

17133325250438673

A.^3

ans=

271574648

39304-91125343

6585037290003375

(3)A/B

ans=

-5.88455.3549-0.2028

6.3554-5.65964.3293

-6.63256.20789.0241

B/A

ans=

30.285519.2643-8.5614

33.439421.1547-9.3974

-0.7443-0.39380.2830

(4)[A,B]

ans=

35421-267

34-4572874

879015930

[A([1,3],:

);B^2]

ans=

3542

879015

600183-81

684282726

156825

5.a=1+2i;b=3+4i;

c=exp(pi*i/6)

c=

0.8660+0.5000i

c+a*b/(a+b)

ans=

1.6353+1.8462i

第2章

一、思考题

3.s=0;

forn=0:

63

s=s+2^n;

end

disp(s)

n=0:

63;

s=sum(2.^n)

二、实验题

1.

x=input('输入一个四位整数:

');

y=[fix(x/1000),mod(fix(x/100),10),mod(fix(x/10),10),mod(x,10)]

z=mod((y+7),10)

x=z(3)*1000+z(4)*100+z

(1)*10+z

(2)

2.

gh=input('输入工号');

h=input('输入工时');

dj=84;

ifh>120

gz=dj*120+1.15*dj*(h-120);

elseifh<60

gz=dj*h-700;

else

gz=dj*h;

end

formatbank;

display([gh,gz])

3.

循环结构

n=input('inputn:

');

s=0;

fork=1:

n

s=s+1/k^2;

end

display(sqrt(s*6))

向量运算

n=input('inputn:

');

k=1:

n;

display(sqrt(sum(1./k.^2)*6))

4.

y=0;k=0;

whiley<3

k=k+1;

y=y+1/(2*k-1);

end

display([k-1,y-1/(2*k-1)])

5.

x0=0;x=1;k=0;

a=input('a=');

b=input('b=');

whileabs(x-x0)>=1e-5&&k<500

x0=x;

x=a/(b+x0);

k=k+1;

end

display([k,x]);

display([(-b+sqrt(b^2+4*a))/2,(-b-sqrt(b^2+4*a))/2]);

6.

y=fun(40)/(fun(30)+fun(20))

(1)函数文件fun.m

functionf=fun(n)

f=n+log(n^2+5);

(2)函数文件fun.m

functionf=fun(n)

a=1:

n;

f=sum(a.*(a+1));

第3章

一、思考题

4.

t=0:

0.01:

1.5;

y=sqrt(3)/2*exp(-4*t).*sin(4*sqrt(3)*t+pi/3);

5.

x=-10:

0.01:

10;

y=linspace(-6,6,size(x,2))

z=x.^3+3*x.*y.^2;

plot3(x,y,z)

6.

x=100:

100:

400;

y=100:

100:

400;

z=[636,697,624,478;698,712,630,478;680,674,598,412;662,626,552,334];

[X,Y]=meshgrid(x,y);

mesh(X,Y,z)

二、实验题

1.

(1)x=-10:

0.01:

10;

plot(x,x-x.^3/3/2)

(2)plot(x,exp(-x.*x/2)/2/pi)

(3)x=-8:

0.01:

8;

plot(x,sqrt((64-x.*x)/2))

(4)t=0:

pi/100:

6*pi;

plot(t.*sin(t),t.*cos(t))

2.

(1)

x1=linspace(0,1,100);

y1=2*x1-0.5;

t=linspace(0,pi,100);

x=sin(3*t).*cos(t);y=sin(3*t).*sin(t);

plot(x1,y1,'r-',x,y,'b:

');

text(0.4,1,'y=2x-0.5');

text(-0.4,0.5,'x=sin(3t)cos(t)');

text(-0.4,0.3,'y=sin(3t)sin(t)');

(2)

subplot(1,2,1);

scatter(x1,y1,10)

title('y=2x-0.5');

subplot(1,2,2);

scatter(x,y,10)

3.

subplot(1,2,1);

x=1:

1:

100;y=sin(1./x);

plot(x,y)

subplot(1,2,2);

fplot('sin(1/x)',[1,100])

4.

subplot(2,2,1);

bar(t,y);

subplot(2,2,2);

stairs(t,y);

subplot(2,2,3);

stem(t,y)

subplot(2,2,4);

semilogy(t,y);

5.

theta=linspace(-pi,pi,100);

ro=5.*cos(theta)+4;

polar(theta,ro);

fi=linspace(0,2*pi,100);a=1

r=a.*(1+cos(fi));

polar(fi,r);

6.

t=0:

pi/20:

2*pi;

x=exp(-t./20).*cos(t);y=exp(-t./20).*sin(t);z=t;

plot3(x,y,z);

t=0:

0.01:

1;

x=t;y=t.^2;z=t.^3;

plot3(x,y,z);

7.

x=-30:

0.1:

0;y=0:

0.1:

30;

[x,y]=meshgrid(x,y);

z=10.*sin(sqrt(x.^2+y.^2))./sqrt(1+x.^2+y.^2);

meshc(x,y,z);

8.

x=linspace(-3,3,100);y=linspace(-3,3,100);

[xy]=meshgrid(x,y);

fxy=-5./(1+x.^2+y.^2);

i=find(abs(x)<=0.8&abs(y)<=0.5);

fxy(i)=NaN;

surf(x,y,fxy)

9.

u=linspace(1,10,100);v=linspace(-pi,pi,100);

[u,v]=meshgrid(u,v);

x=3.*u.*sin(v);y=2.*u.*cos(v);z=4*u.^2;

x=3*u.*sin(v);y=2*u.*cos(v);z=4*u.^2;

surf(x,y,z);shadinginterp;

light('position',[1,0,1]);

10.

t=0:

pi/100:

2*pi;

y=sin(t);

comet(t,y)

第4章

一、思考题

5.

(1)A=eye(3);

(2)C=100+(200-100)*rand(5,6);

(3)D=1+sqrt(0.2)*randn(1,500);

(4)E=ones(size(A));

(5)A=A+30*eye(size(A));

(6)B=diag(diag(A))

二、实验题

1.

P=pascal(5);H=hilb(5);

Dp=det(P);Dh=det(H);

Kp=cond(P);Kh=cond(H);

P矩阵的性能更好,因为Kp较小

2.

A=[1,-1,2,3;0,9,3,3;7,-5,0,2;23,6,8,3]

B=[3,pi/2,45;32,-76,sqrt(37);5,72,4.5e-4;exp

(2),0,97]

A1=diag(A);B1=diag(B);

A2=triu(A);B2=triu(B);

A3=tril(A);B3=tril(B);

rA=rank(A);rB=rank(B);

nA=norm(A);nb=norm(B);

cA=cond(A);cB=cond(B);

3.

A=[31,1,0;-4,-1,0;4,-8,-2];

[V,D]=eig(A);

4.

A=diag([-1,-1,-1,-1],-1)+diag([-1,-1,-1,-1],1)+diag([2,2,2,2,2])

b=[1,0,0,0,0]';

x1=inv(A)*b;

x2=A\b;

[L,U]=lu(A);

x3=U\(L\b);

[Q,R]=qr(a);

[Q,R]=qr(A);

x4=R\(Q\b)

R=chol(A);

x5=R\(R'\b)

5.

B=sparse(A);

x1=inv(B)*b;

x2=B\b;

[L,U]=lu(B);

x3=U\(L\b);

第5章

一、思考题

3.

A=randn(10,5);

mean(A)

std(A)

max(max(A))

min(min(A))

sum(A,2)

sum(sum(A))

sort(A,1)

sort(A,2,'descend')

二、实验题

1.

A=rand(1,30000);

mean(A)

std(A)

max(A)

min(A)

size(find(A>0.5))/size(A)

2.

h=[466,715,950,1422,1635];

w=[7.04,4.28,3.40,2.52,2.13];

hh=[500,900,1500];

ww=interp1(h,w,hh,'spline')

3.

x=linspace(1,10,50);

y=log(x);

f=polyfit(x,y,5);

yy=polyval(f,x);

plot(x,y,'r-',x,yy,'g.')

4.

N=64;%采样点数

T=5;%采样时间终点

t=linspace(0,T,N);%给出N个采样时间ti(I=1:

N)

x=3*exp(-t);%求各采样点样本值x

dt=t

(2)-t

(1);%采样周期

f=1/dt;%采样频率(Hz)

X=fft(x);%计算x的快速傅立叶变换X

F=X(1:

N/2+1);%F(k)=X(k)(k=1:

N/2+1)

f=f*(0:

N/2)/N;%使频率轴f从零开始

plot(f,abs(F),'-*')%绘制振幅-频率图

xlabel('Frequency');

ylabel('|F(k)|')

5.

(1)p1=[12007];p2=[1-2];p3=[10051];

p12=conv(p1,p2);

p=p12+[zeros(1,size(p12,2)-size(p3,2)),p3];

roots(p)

(2)A=[-1,4,3;2,1,5;0,5,6];

Px=polyval(p,A)

Pxm=polyvalm(p,A)

6.

(1)z=fzero('3*x-sin(x)+1',0)

(2)建立函数文件myfun.m

functionF=myfun(X)

x=X

(1);

y=X

(2);

F

(1)=x*x+y*y-9;

F

(2)=x+y-1;

在命令窗口中输入以下命令:

x=fsolve(@myfun,[3,0]',optimset('Display','off'))

第6章

一、思考题

2.

fx=inline('1./(1+x.^2)');

[I,n]=quad(fx,-100000,100000,1e-3);

[I,n]=quadl(fx,-100000,100000,1e-3);

x=-100000:

0.01:

100000;

y=1./(1+x.*x);

trapz(x,y);

3.

(1)fx=inline('-2*y+2*x*x+2*x');

[t,y]=ode23(fx,[0,0.5],1)

(2)fx=inline('y-exp(x)*cos(x)');

[t,y]=ode23(fx,[0,3],1)

二、实验题

1.

forx=1:

3

fx=[x,x^2,x^3;1,2*x,3*x;0,2,6*x];

diff(fx)

end

2.

(1)x=0:

0.01:

1;

y=x.^10+10.^x+1./log10(x);

dy=diff(y)/0.01;

(2)x=0:

0.01:

1;

y=log(1+x);

dy=diff(y,2)/0.01;

plot(x(1:

99),dy)

3.

(1)fx=inline('x.^2.*sqrt(2*x.*x+3)');

quad(fx,1,5)

(2)fx=inline('x./sin(x).^2');

quad(fx,pi/4,pi/3)

(3)fx=inline('abs(cos(x+y))');

dblquad(fx,0,pi,0,pi)

(4)symsxy;

fx=x*y;

int(int(fx,y^2,y+2),-1,2)

x的积分区间为【0,2】时

fx=inline('x.*y');

dblquad(fx,0,2,-1,2)

4.

x=0.3:

0.2:

1.5;

y=[0.3895,0.6598,0.9147,1.1611,1.3971,1.6212,1.8325];

trapz(x,y)

5.

(1)

yp=inline('-(1.2+sin(10*x))*y');

[t,y]=ode23(yp,[0,5],1);

(2)令

,则可写出原方程的状态方程形式:

--->

建立函数文件ztfun.m

functiony=ztfun(t,x)

b=[0;0;cos(t)];

y=[0,1,0;0,0,1;-1/(3+sin(t)),-1,5*cos(2*t)/(t+1)^2]*x+b;

解微分方程组

[t,y]=ode23(@ztfun,[0,5],[1;0;2]);

6.

建立函数文件ztfun.m

functionyy=ztfun(t,y)

yy=[y

(2)*y(3);-y

(1)*y(3);-0.51*y

(1)*y

(2)];

解微分方程组

[t,y]=ode23(@ztfun,[0,5],[0;1;1])

第7章

一、思考题

3.

(1)数值积分

fx=inline('exp(x).*(1+exp(x)).^2');

quad(fx,0,log

(2))

符号积分

f=sym('exp(x)*(1+exp(x))^2');

v=int(f,0,log

(2));

eval(v)

(2)略

二、实验题

1.

A=sym('[1,2,3;x,y,z;3,2,1]')

rank(A)

inv(A)

det(A)

2.

(1)y=sym('sqrt(x+sqrt(x+sqrt(x)))');

y1=diff(y)

y2=diff(y,'x',2)

(2)symsxy;

fxy=sin(x^2*y)*exp(-x^2-y);

diff(diff(fxy,x),y)

3.

(1)symsx

int(1/(1+x^4))

(2)symsxt

int((-2*x*x+1)/(2*x*x-3*x+1)^2,x,cos(t),exp(2*t))

4.

symsnx

symsum(1/(2*n+1)/(2*x+1)^(2*n+1),n,0,inf)

symsum(1/(2*n+1)/(2*x+1)^(2*n+1),n,0,5)

5.

(1)symsx

taylor((exp(x)+exp(-x))/2,5,0)

(2)symsax

taylor(exp(-5*x)*sin(3*x+pi/3),5,a)

6.

(1)x=solve(sym('x^3+a*x+1=0'))

(2)[xy]=solve(sym('sqrt(x^2+y^2)-100=0,3*x+5*y-8=0'))

7.方程转化为:

符号解

[y1,y11]=dsolve('Dy=y1,Dy1+y=1-t^2/pi','y(-2)=5,y1(-2)=5','t')

数值解

编写函数文件ztfun.m

functionyy=ztfun(t,y)

yy=[y

(2);1-t^2/pi-y

(1)];

在命令窗口输入以下命令

[t,y]=ode45(@ztfun,[-2,7],[-5;5]);

t=linspace(-2,7,49)

y2=y

8.

[x,y]=dsolve('Dx=3*x+4*y,Dy=-4*x+3*y','x(0)=0,y(0)=1')

第9章

二、实验题

1.

(1)新建一个BlankGUI。

(2)在窗口上添加一个StaticText、一个EditText,一个PushBotton,两个CheckBox,一组RadioButton。

各控件的属性设置如表9.1所示。

表9.1界面控件属性

控件

属性名

属性值

静态文本框

String

实验一:

编辑框

String

按钮

String

设置字体大小

单选按钮1

String

red

单选按钮2

String

yellow

单选按钮3

String

blue

单选按钮4

String

black

Value

1.0

复选框1

String

倾斜

复选框2

String

加粗

(3)在按钮的Callback函数中添加以下代码:

s=eval(get(handles.edit1,'String'));

set(handles.text1,'FontSize',s);

(4)在复选框1的Callback函数中添加以下代码:

if(get(hObject,'Value')==get(hObject,'Max'))

set(handles.text1,'FontAngle','italic');

else

set(handles.text1,'FontAngle','normal');

end

在复选框2的Callback函数中添加以下代码:

if(get(hObject,'Value')==get(hObject,'Max'))

set(handles.text1,'FontWeight','bold');

else

set(handles.text1,'FontAngle','normal');

end

(5)在单选按钮组的SelectionChangeFcn函数中添加以下代码:

set(handles.text1,'ForegroundColor',get(eventdata.NewValue,'string'));

2.

(1)新建一个BlankGUI。

(2)用菜单编辑器编辑菜单,各菜单项属性如表9.2.

表9.2菜单项属性

菜单项

Label属性值

Tag属性值

Menu

Line

Label

m_line

Help

Help

m_help

LineMenuItem

LineStyle

LineStyle

m_linestyle

LineWidth

LineWidth

m_linewidth

LineColor

LineColor

mlinecolor

HelpMenuItem

About

About

m_about

(3)绘图。

在窗口的OpeningFcn函数添加以下代码:

globalh;

t=0:

0.01:

6;

h=plot(t.*sin(t),t.*cos(t))

(4)在LineStyle菜单项的Callback函数中添加以下代码:

globalh;

set(h,'LineStyle','-.');

在LineWidth菜单项的Callback函数中添加以下代码:

globalh;

set(h,'LineWidth',2);

在LineColor菜单项的Callback函数中添加以下代码:

globalh;

set(h,'color','red');

在About菜单项的Callback函数中添加以下代码:

msgbox('HelpItem');

3.

t=0:

pi/20:

6*pi;a=2;b=3;

r=a+b*t;

h_draw=polar(t,r,'-*');

h_menu=uicontextmenu;%½¨Á¢¿ì½Ý²Ëµ¥

%½¨Á¢²Ëµ¥Ïî

uimenu(h_menu,'Label','red','Call','set(h_draw,''C

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 学科竞赛

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1