matlab程序设计与应用第二版习题答案.docx
- 文档编号:18576492
- 上传时间:2023-08-19
- 格式:DOCX
- 页数:17
- 大小:19.24KB
matlab程序设计与应用第二版习题答案.docx
《matlab程序设计与应用第二版习题答案.docx》由会员分享,可在线阅读,更多相关《matlab程序设计与应用第二版习题答案.docx(17页珍藏版)》请在冰点文库上搜索。
matlab程序设计与应用第二版习题答案
matlab程序设计与应用第二版习题答案
【篇一:
matlab程序设计与应用(第二版)实验答案】
%实验一matlab运算基础
%第1题
%
(1)
z1=2*sin(85*pi/180)/(1+exp
(2))
%
(2)
x=[2,1+2i;-0.45,5];
z2=0.5*log(x+sqrt(1+x.^2))
%(3)
a=-3.0:
0.1:
3.0;
z3=(exp(0.3*a)-exp(-0.3*a))/2.*sin(a+0.3)+log((0.3+a)/2)
%(4)
t=0:
0.5:
2.5;
z4=t.^2.*(t=0t1)+(t.^2-1).*(t=1t2)+(t.^2-2*t+1).*(t=2t3)
%第2题
a=[1234-4;34787;3657];
b=[13-1;203;3-27];
a+6*b
a-b+eye(size(a))
a*b
a.*b
a^3
a.^3
a/b
b\a
[a,b]
[a([1,3],:
);b^2]
%第3题
a=[12345;678910;1112131415;1617181920;2122232425]b=[3016;17-69;023-4;970;41311]
c=a*b
f=size(c)
d=c(f
(1)-2:
f
(1),f
(2)-1:
f
(2))
whos
%第4题
%
(1):
a=100:
999;
b=rem(a,21);
c=length(find(b==0))
%
(2):
a=lsdhksdlkklsdkl;
k=find(a=aa=z);
a(k)=[]
%实验二matlab矩阵分析与处理
%第1题
e=eye(3);
r=rand(3,2);
o=zeros(2,3);
s=diag([2,3]);
a=[e,r;o,s];
a^2
b=[e,(r+r*s);o,s^2]
%第2题
h=hilb(5)
p=pascal(5)
hh=det(h)
hp=det(p)
th=cond(h)
tp=cond(p)
%第3题
a=fix(10*rand(5))
h=det(a)
trace=trace(a)
rank=rank(a)
norm=norm(a)
%第4题
a=[-29,6,18;20,5,12;-8,8,5]
[v,d]=eig(a)
%数学意义略
%第5题方法一
%
(1):
a=[1/2,1/3,1/4;1/3,1/4,1/5;1/4,1/5,1/6];
b=[0.95,0.67,0.52];
x=inv(a)*b
%
(2):
b=[0.95,0.67,0.53];
x=inv(a)*b
%(3):
cond(a)
%第5题方法二
a=hilb(4)
a(:
1)=[]
a(4,:
)=[]
b=[0.95,0.67,0.52];
x=inv(a)*b
b1=[0.95,0.67,0.53];
x1=inv(a)*b1
n=cond(b)
n1=cond(b1)
na=cond(a)%矩阵a为病态矩阵
%第6题
a=[1,4,9;16,25,36;49,64,81]
b=sqrtm(a)
c=sqrt(a)%sqrtm函数是以矩阵为单位进行计算,sqrt函数是以矩阵中的元素进行计算
%实验三选择程序结构设计
%第1题程序一
x=[-5.0,-3.0,1.0,2.0,2.5,3.0,5.0];
y=[];%建立存放所有y值的矩阵
forx0=x
ifx00x0~=-3
y=[y,x0*x0+x0-6];
elseifx0=0x05x0~=2x0~=3
y=[y,x0*x0-5*x0+6];
else
y=[y,x0*x0-x0-1];
end
end
x%输出所有x
y%输出所有y
%第1题程序二
x=[-5,-3,1,2,2.5,3,5];
y=[];
fora=1:
7
ifx(a)0x(a)~=-3
y=[y,(x(a))^2+x(a)-6];
elseifx(a)=0x(a)5x(a)~=2x(a)~=3
y=[y,(x(a))^2-5*x(a)+6];
else
y=[y,x(a)*x(a)-x(a)-1];
end
end
%第2题程序一
x=input(请输入一个百分制成绩:
);
ifx100|x0
disp(您输入的成绩不是百分制成绩,请重新输入。
);
else
ifx=100x=90
disp(a);
elseifx=89x=80
disp(b);
elseifx=79x=70
disp(c);
elseifx=69x60
disp(d);
else
disp(e);
end
end
%第2题程序二
s=input(请输入一个成绩(0分到100分之间):
);%s用于存放成绩
while1%判断输入成绩的合理性
ifs0|s100
disp(输入的成绩需在0到100之间,请重新输入:
)
s=input(请输入一个成绩(0分到100分之间):
);
else
break;
end
end
switchfix(s/10)%对成绩做出等级判断
case{9,10}
disp(a)
case8
disp(b)
case7
disp(c)
case6
disp(d)
otherwise
disp(e)
end
%第3题
n=input(请输入员工工号:
);
h=input(该员工工作时数是:
);
ifh120
x=(h-120)*84*(1+0.15)+120*84;
elseifh60
x=h*84-700;
else
x=h*84;
end
disp([num2str(n),号员工,的应发工资为,num2str(x)]);
%第4题(还可以用switch语句实现)
a=fix(10+(99-10)*rand(1,2))%产生两个随机整数
x=a
(1);
y=a
(2);
t=input(请输入运算符号:
s);
ift==+
z=x+y;
elseift==-
z=x-y;
elseift==*
z=x*y;
elseift==/
z=x/y;
end
disp([num2str(x),t,num2str(y),=,num2str(z)])%
结果
%第5题
a=rand(5,6)%产生5x6的随机矩阵
n=input(请输入您要输出矩阵的第几行:
);
ifn5
disp(超出了矩阵的行数,矩阵的最后一行为:
)
a(5,:
)
else
disp([矩阵的第,num2str(n),行为:
])
a(n,:
)
end
%实验四循环结构程序设计
%第1题程序一
s=0;
n=input(n=?
);
fori=1:
n
s=s+1/i/i;
end
pi=sqrt(6*s)
pi
%第1题程序二
n=input(n=?
);
a=1:
n;
输出运算
【篇二:
matlab程序设计与应用(第二版)课后实验答案】
txt>实验一matlab运算基础
1.先求下列表达式的值,然后显示matlab工作空间的使用情况并保存全部变量。
2sin850
(1)z1?
21?
e
(2)z2?
1?
2i?
?
21ln(x,其中x?
?
?
5?
2?
?
0.45
e0.3a?
e?
0.3a0.3?
asin(a?
0.3)?
ln,a?
?
3.0,?
2.9,?
2.9,3.0(3)z3?
22
?
t20?
t?
1?
(4)z4?
?
t2?
11?
t?
2,其中t=0:
0.5:
2.5
?
t2?
2t?
12?
t?
3?
2.已知:
?
1234?
4?
?
13?
1?
?
b?
?
203?
a?
?
34787?
?
?
?
?
?
?
3657?
?
?
3?
27?
?
求下列表达式的值:
(1)a+6*b和a-b+i(其中i为单位矩阵)
(2)a*b和a.*b
(3)a^3和a.^3
(4)a/b及b\a
(5)[a,b]和[a([1,3],:
);b^2]
解:
3.设有矩阵a和b
?
1?
6?
a?
?
11?
?
16
?
?
215?
?
3?
1778910?
?
?
12131415?
b?
?
0?
?
17181920?
?
9?
22232425?
?
?
423416?
?
69?
?
23?
4?
?
70?
1311?
?
0
(1)求它们的乘积c。
(3)查看matlab工作空间的使用情况。
4.完成下列操作:
(1)求[100,999]之间能被21整除的数的个数。
(2)建立一个字符串向量,删除其中的大写字母。
解:
(1)结果:
(2).建立一个字符串向量例如:
ch=abc123d4e56fg9;则要求结果是:
实验二matlab矩阵分析与处理
?
e3?
3a?
1.设有分块矩阵?
o?
2?
3r3?
2?
,其中e、r、o、s分别为单位矩阵、随机矩阵、零矩s2?
2?
?
阵和对角阵,试通过数值计算验证a?
?
解:
m文件如下;
2?
e?
or?
rs?
。
?
2s?
由ans,所以a?
?
2?
e
?
or?
rs?
?
2s?
2.产生5阶希尔伯特矩阵h和5阶帕斯卡矩阵p,且求其行列式的值hh和hp以及它们的条件数th和tp,判断哪个矩阵性能更好。
为什么?
解:
m文件如下:
解:
m文件如下:
4.已知
?
?
29618?
?
a?
?
20512?
?
?
?
?
885?
?
求a的特征值及特征向量,并分析其数学意义。
解:
m文件如图:
【篇三:
matlab程序设计与应用(第二版)刘卫国课后实验报告】
s=txt>一、实验目的
1、熟悉启动和退出matlab的方法。
2、熟悉matlab命令窗口的组成。
3、掌握建立矩阵的方法。
4、掌握matlab各种表达式的书写规则以及常用函数的使用。
二、实验内容
三、实验程序
1、
1.1
z1=(2*sin(85*pi/180))/(1+exp
(2));
结果
z1=0.2375
1.2
x=[2,1+2*1i;-0.45,5];
z2=1/2*log10(x+sqrt(1+x^2));
结果
x=2.00001.0000+2.0000i
-0.45005.0000
z2=0.3090-0.0110i0.3895+0.1589i
0.0929+0.4058i0.5012-0.0019i
1.3
a=-3.0:
0.1:
3.0;
z3=(exp(0.3*a)-exp(-0.3*a))/2.*sin(a+0.3)+log10((0.3+a)/2);
1.4
t=0:
0.5:
2.5;
z4=(t=0t1).*(t.*t)+(t=1t2).*(t.*t-1)+(t=2t3).*(t.*t-2*t+1);
结果
z4=00.250001.25001.00002.2500
2、
a=[12,34,-4;34,7,87;3,65,7];
b=[1,3,-1;2,0,3;3,-2,7];
x1=a+6*b;
x2=a-b+eye;
x3=a*b;
x4=a.*b;
x5=a^3;
x6=a.^3;
x7=a/b;
x8=b\a;
x9=[a,b];
x10=[a([1,3],:
);b^2];
3、
a=[12345;678910;1112131415;1617181920;2122232425];
b=[3016;17-69;023-4;970;41311];
c=a*b;
f=size(c);
d=c(f
(1)-2:
f
(1),f
(2)-1:
f
(2));
结果
f=53
d=520397
705557
890717
4、
a=100:
999;
b=rem(a,21);
c=length(find(b==0));
结果
c=43
四、实验小结
多练习,多动手,达到熟能生巧,灵活应用matlab做各种简单的运算算法。
实验二matlab矩阵分析与处理
一、实验目的
1、掌握生成特殊矩阵的方法。
2、掌握矩阵分析的方法。
3、用矩阵求逆法解线性方程组。
二、实验内容
三、实验程序
1、
e=eye(3);
r=rand(3,2);
o=zeros(2,3);
s=diag([2,3]);
a=[e,r;o,s];
c=a^2;
b=[e,(r+r*s);o,s^2];
e,r,o,s,a,c,b
结果
e=100
010
001
r=0.95720.1419
0.48540.4218
0.80030.9157
o=000
000
s=20
03
a=1.0000000.95720.1419
01.000000.48540.4218
001.00000.80030.9157
0002.00000
00003.0000
c=1.0000002.87150.5675
01.000001.45611.6870
001.00002.40083.6629
0004.00000
00009.0000
b=1.0000002.87150.5675
01.000001.45611.6870
001.00002.40083.6629
0004.00000
00009.0000
2、
h=hilb(5);
p=pascal(5);
hh=det(h);
hp=det(p);
th=cond(h);
tp=cond(p);
h,p,hh,hp,th,tp
结果
hh=3.7493e-012
hp=1
th=4.7661e+005
tp=8.5175e+003
3、
a=fix(10*rand(5));
h=det(a);
trace=trace(a);
rank=rank(a);
norm=norm(a);
a,h,trace,rank,norm
结果
h=-3.2509e+004
trace=33
rank=5
norm=25.3208
4、
a=[-29,6,18;20,5,12;-8,8,5];
[v,d]=eig(a);
结果
a=-29618
20512
-885
5、
a=[1/2,1/3,1/4;1/3,1/4,1/5;1/4,1/5,1/6];
b=[0.95,0.67,0.52];
x1=a\b;
b=[0.95,0.67,0.53];
x2=a\b;
c=cond(a);
结果
x1=1.2000
0.6000
0.6000
x2=1.2000
0.6000
0.6000
c=1.3533e+003
6、
a=[1,4,9;16,25,36;49,64,81];
b=sqrtm(a);
c=sqrt(a);
结果
b=0.6344+1.3620i0.3688+0.7235i0.7983-0.4388i
1.4489+1.1717i2.7697+0.6224i3.2141-0.3775i
4.3578-1.6237i5.7110-0.8625i7.7767+0.5231i
c=123
456
789
四、实验小结
熟悉掌握利用zeros、ones、eye、rand、rands建立各种特殊矩阵,并练熟用冒号表达式建立矩阵并获得其子矩阵,学会计算矩阵的行列式值、迹、秩、范数及其特征值等。
实验三选择结构程序设计
一、实验目的
1、
2、
3、
4、wit掌握建立和执行m文件的方法。
掌握利用if语句实现选择结构的方法。
掌握利用sch语句实现多分支选择结构的方法。
掌握try语句的使用。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- matlab 程序设计 应用 第二 习题 答案