MATLAB程序设计与应用第二版课后题答案Word下载.docx
- 文档编号:19703935
- 上传时间:2023-01-09
- 格式:DOCX
- 页数:25
- 大小:186.78KB
MATLAB程序设计与应用第二版课后题答案Word下载.docx
《MATLAB程序设计与应用第二版课后题答案Word下载.docx》由会员分享,可在线阅读,更多相关《MATLAB程序设计与应用第二版课后题答案Word下载.docx(25页珍藏版)》请在冰豆网上搜索。
E=
1.0e+003*
0.9141-0.2239
1.20802.7123
1.1330-0.2103
(2)E<
D
ans=
01
00
01
E&
11
11
E|D
~D|~E
10
find(A>
=10&
A<
25)
1
5
6.
all(A)
0
any(A)
isnan(A)
ans=
0100000
isinf(A)
0011000
isfinite(A)
1000111
7.
A
(1).x1=’学号’;
A
(1).x2=’姓名’;
A
(1).x3=’专业’;
A
(1).x4.x41=’成绩1’;
……….
A
(2).x1=’学号’;
A
(2).x2=’姓名’;
A
(2).x3=’专业’;
A
(2).x4.x41=’成绩1’;
A(3).x1=’学号’;
A(3).x2=’姓名’;
A(3).x3=’专业’;
A(3).x4.x41=’成绩1’;
A(4).x1=’学号’;
A(4).x2=’姓名’;
A(4).x3=’专业’;
A(4).x4.x41=’成绩1’;
A(5).x1=’学号’;
A(5).x2=’姓名’;
A(5).x3=’专业’;
A(5).x4.x41=’成绩1’;
8.
(1)
size(B)
22
ndims(B)
2
(2)
B
(2)
[3x3double
B(4)
ans=
{3x3cell}
(3)
B(3)=[]
B=
[1][3x3double]{3x3cell}
B{3}=[]
[1][3x3double][]
第三章
1.
(1)A=eye(3)
(2)A=100+100*rand(5,6)
(3)A=1+sqrt(0.2)*randn(10,50)
(4)B=ones(size(A))
(5)A+30*eye(size(A))
(6)B=diag(diag(A))
2.
B=rot90(A)
C=rot90(A,-1)
3.
B=inv(A);
A的逆矩阵
C=det(A);
A的行列式的值
D=A*B
E=B*A
D=E因此A与A-1是互逆的。
4.
A=[42-1;
3-12;
1230];
b=[2;
10;
8];
x=inv(A)*b
x=
-6.0000
26.6667
27.3333
5.
(1)
diag(A);
主对角线元素
9
triu(A);
上三角阵
1-123
01-42
0052
0009
tril(A);
下三角阵
1000
5100
3050
111509
rank(A);
秩
4
norm(A);
范数
21.3005
cond(A);
条件数
11.1739
trace(A);
迹
16
(2)略
6.
A=[110.5;
110.25;
0.50.252]
1.00001.00000.5000
1.00001.00000.2500
0.50000.25002.0000
[V,D]=eig(A)
V=
0.72120.44430.5315
-0.68630.56210.4615
-0.0937-0.69760.7103
-0.016600
01.48010
002.5365
第四章
1.a=input('
请输入一个4位数:
'
);
while(a<
1000|a>
9999)
a=input('
输入错误,请重新输入一个4位数:
end
b=fix(a/1000);
c=rem(fix(a/100),10);
d=rem(fix(a/10),10);
e=rem(a,10);
b=b+7;
c=c+7;
d=d+7;
e=e+7;
b=rem(b,10);
c=rem(c,10);
d=rem(c,10);
e=rem(e,10);
g=b;
b=d;
d=g;
g=c;
c=e;
e=g;
a=1000*d+100*e+10*b+c;
disp(['
加密后:
num2str(a)])
2.a=input('
请输入a:
'
b=input('
请输入b:
c=input('
请输入c:
x=0.5:
1:
5.5;
x1=(x>
=0.5&
x<
1.5);
x2=(x>
=1.5&
3.5);
x3=(x>
=3.5&
=5.5);
y1=a.*(x.^2)+b.*x+c;
y2=a*(sin(b)^c)+x;
y3=log(abs(b+c./x));
y=y1.*x1+y1.*x2+y3.*x3;
disp(y)
3.x=fix(rand(1,20)*89)+10;
x1=fix(sum(x)/20);
平均数是:
num2str(x1)])
m=(rem(x,2)==0&
x1);
n=find(m);
小于平均数的数是:
num2str(x(n))]);
4.A=input('
请输入20个数的一个行向量:
m=A;
a=m;
b=m;
form=A
ifa>
=m
elseifb<
最小数是:
最大数是:
num2str(b)])
5.s=0;
a=0;
forb=1:
64
c=2^a;
a=a+1;
s=s+c;
2的0次方到63次方的和是:
num2str(s)])
6,sum1=0;
forn=1:
100
x=(-1)^(n+1)*(1/n);
sum1=sum1+x;
当n取100时:
sum='
num2str(sum1)])
sum2=0;
1000
sum2=sum2+x;
当n取1000时:
num2str(sum2)])
sum3=0;
10000
sum3=sum3+x;
当n取10000时:
sum='
num2str(sum3)])
8.clearall
请输入一个矩阵:
请再输入一个矩阵:
(注意:
两矩阵要可以相乘)'
[f1,f2]=juzhenji(a,b);
9.clearall
y=qiuhe(100,1)+qiuhe(50,2)+qiuhe(10,-1);
10.
(1)S=108
(2)x=41220
y=246
第五章
1.
(1)x=-10:
0.1:
y=100./(1+x.^2);
plot(x,y)
(2)x=-10:
y=1/(2*pi)*exp(-x.^2/2);
(3)ezplot('
x^2+y^2=1'
(4)
t=-10:
x=t.^2;
y=5*t.^3;
plot(x,y)
theta=0:
0.01:
2*pi;
rho=5*cos(theta)+4;
polar(theta,rho)
(2)
theta=0.001:
rho=12./sqrt(theta);
(3)theta=0.001:
rho=5./cos(theta)-7;
(4)
rho=pi/3.*theta.^2;
t=0:
pi/100:
x=cos(t);
y=sin(t);
z=t;
plot3(x,y,z)
u=0:
v=0:
x=(1+cos(u)).*cos(v);
y=(1+cos(u)).*sin(v);
z=sin(u);
plot函数:
>
x=linspace(-10,10,200);
y=[];
forx0=x
ifx0>
y=[y,x0.^2+(1+x0).^(1/4)+5];
elseifx0==0
y=[y,0];
elseifx0<
y=[y,x0.^3+sqrt(1-x0)-5];
fplot函数:
fplot('
(x<
0).*(x.^3+sqrt(1-x)-5)+(x==0).*0+(x>
0).*(x.^2+(1+x).^(1/4)+5)'
[-10,10])
第六章
A=randn(10,5)
(1)mean(A);
均值std(A);
标准方差
(2)max(max(A));
最大元素min(min(A));
最小元素
(3)B=sum(A,2);
A每行元素的和sum(B);
A全部元素之和
(4)sort(A);
A的每列元素按升序排列
sort(A,2,’descend’);
A的每行元素按将序排列
X=[149162536496481100];
Y=1:
X1=1:
100;
Y1=interp1(X,Y,X1,'
cubic'
x=[165123150123141];
y=[187126172125148];
P=polyfit(x,y,3)
P=
-0.00000.0013-0.17798.4330
所以它的线性拟合曲线为:
p(x)=1.3x2—177.9x+8433
(1)P1=[032];
P2=[5-12];
P3=[10-0.5];
P=conv(conv(P1,P2),P3)
015.00007.0000-3.50000.5000-2.0000-2.0000
所以P(x)=15x5+7x4-3.5x3+0.5x2-2x-2
roots(P)
0.7071
0.1000+0.6245i
0.1000-0.6245i
-0.7071
-0.6667
i=0:
xi=0.2*i;
polyval(P,xi)
-2.0000-2.3920-2.6112-1.70242.710415.000042.112094.1408184.9056332.5264560.0000
建立函数文件:
functionf=fxy(u)
x=u
(1);
y=u
(2);
f=3.*x.^2+2*x.*y+y.^2
在命令窗口中输入以下命令:
[U,fmin]=fminsearch('
fxy'
[1,1])
结果:
U=
1.0e-004*
-0.06750.1715
fmin=
1.9920e-010
f=inline('
-sin(x)-cos(x.^2)'
fmax=fminbnd(f,0,pi)
fmax=
0.7310
(1)x=[pi/6pi/4pi/3];
sin(x).^2+cos(x).^2'
dx=diff(f([x,5*pi/12]))/(pi/12)可参见第157页例题6.19
dx=
000
x=pi/2时单独计算:
x=pi/2;
diff(f([x,pi]))/(pi/2)
x=1:
3;
sqrt(x.^2+1)'
dx=diff(f([x,4]))
0.82190.92620.9608
7.
(1)
sin(x).^5.*sin(5*x)'
quad(f,0,pi)
0.0982
(1+x.^2)./(1+x.^4)'
quad(f,-1,1)
2.2214
x.*sin(x)./(1+cos(x).^2)'
2.4674
abs(cos(x+y))'
dblquad(f,0,pi,0,pi)
6.2832
N=64;
%采样点数
T=5;
%采样时间终点
t=linspace(0,T,N);
%给出N个采样时间ti(i=1:
N)
y=exp(-t);
%求各采样点样本值y
dt=t
(2)-t
(1);
%采样周期
f=1/dt;
%采样频率
Y=fft(y);
%计算y的快速傅里叶变换Y
F=Y(1:
N/2+1);
%F(k)=Y(k)
f=f*(0:
N/2)/N;
%使频率轴f从0开始
plot(f,abs(F))%绘制振幅-频率图
9.
矩阵求逆法:
A=[235;
374;
1-71];
b=[10;
5];
-1.8060
-0.5373
3.0448
矩阵除法法:
x=A\b
矩阵分解法:
[L,U]=lu(A);
x=U\(L\b)
(2)方法同
(1)
10.
函数文件:
line_solution(A,b)
function[x,y]=line_solution(A,b)
[m,n]=size(A);
y=[];
ifnorm(b)>
ifrank(A)==rank([A,b])
ifrank(A)==n
disp('
原方程组有唯一解x'
x=A\b;
else
原方程组有无穷个解,特解为x,齐次方程组的基础解系为y'
y=null(A,'
r'
方程组无解'
x=[];
end
else
原方程组有零解x'
x=zeros(n,1);
ifrank(A)<
n
方程组有无穷个解,基础解系为y'
程序:
A=[21-11;
42-21;
21-1-1];
b=[1;
2;
1];
[x,y]=line_solution(A,b)
原方程组有无穷个解,特解为x,齐次方程组的基础解系为y
Warning:
Rankdeficient,rank=2,tol=4.3512e-015.
Inline_solutionat11
方程组无解
[]
y=
-0.50000.5000
1.00000
01.0000
11.
x-sin(x)./x'
x=fzero(f,0.5)
0.8767
(sin(x).^2).*exp(-0.1.*x)-0.5.*abs(x)'
x=fzero(f,1.5)
1.6738
12.
x=u
(1)
y=u
(2)
f
(1)=x-0.6*sin(x)-0.3*cos(y)
f
(2)=y-0.6*cos(x)+0.3*sin(y)
在命令窗口输入以下命令:
x=fsolve('
[0.5,0.5],optimset('
Display'
'
off'
))
0.63540.3734
15.
A=[-120;
-12-1;
02-1];
d=[-1;
0;
B=spdiags(A,d,5,5);
b=[10000]'
;
x=(inv(B)*b)'
0.83330.66670.50000.33330.1667
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLAB 程序设计 应用 第二 课后 答案