Matlab上机实验答案Word文档下载推荐.docx
- 文档编号:18569338
- 上传时间:2022-12-28
- 格式:DOCX
- 页数:36
- 大小:204.79KB
Matlab上机实验答案Word文档下载推荐.docx
《Matlab上机实验答案Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《Matlab上机实验答案Word文档下载推荐.docx(36页珍藏版)》请在冰豆网上搜索。
2.5
t=0:
2.5;
z4=(t>
=0&
t<
1).*(t.^2)+(t>
=1&
2).*(t.^2-1)+(t>
=2&
3).*(t.^2-2.*t+1)
z4=
00.250001.25001.00002.2500
2.已知:
求下列表达式的值:
(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]
A=[1234-4;
34787;
3657];
B=[13-1;
203;
3-27];
A+6*B
ans=
1852-10
467105
215349
I=eye(3);
A-B+I
1231-3
32884
0671
(2)
A*B
684462
309-72596
154-5241
A.*B
121024
680261
9-13049
(3)
A^3
3722623382448604
247370149188600766
78688454142118820
A.^3
172839304-64
39304343658503
27274625343
(4)
A/B
16.4000-13.60007.6000
35.8000-76.200050.2000
67.0000-134.000068.0000
B\A
109.4000-131.2000322.8000
-53.000085.0000-171.0000
-61.600089.8000-186.2000
(5)
[A,B]
1234-413-1
34787203
36573-27
[A([1,3],:
1234-4
3657
451
11019
20-540
3.设有矩阵A和B
(1)求它们的乘积C。
(2)将矩阵C的右下角3×
2子矩阵赋给D。
(3)查看MATLAB工作空间的使用情况。
A=(reshape(1:
25,5,5))'
;
B=[3016;
17-69;
023-4;
970;
41311];
C=A*B
C=
9315077
258335237
423520397
588705557
753890717
D=C(3:
5,2:
3)
D=
520397
705557
890717
whos
NameSizeBytesClassAttributes
A5x5200double
B5x3120double
C5x3120double
D3x248double
4.完成下列操作:
(1)求[100,999]之间能被21整除的数的个数。
(2)建立一个字符串向量,删除其中的大写字母。
n=100:
999;
l=find(rem(n,21)==0);
length(l)
43
ch='
aegbBOIEG0je23RGnc'
wz=find(ch>
='
A'
&
ch<
Z'
ch(wz)=[]
ch=
aegb0je23nc
实验二MATLAB矩阵分析与处理
1.设有分块矩阵
,其中E、R、O、S分别为单位矩阵、随机矩阵、零矩阵和对角阵,试通过数值计算验证
。
E=eye(3);
R=rand(3,2);
O=zeros(2,3);
S=diag(1:
2);
A=[E,R;
O,S]
A=
1.0000000.81470.9134
01.000000.90580.6324
001.00000.12700.0975
0001.00000
00002.0000
A^2
1.0000001.62942.7401
01.000001.81161.8971
001.00000.25400.2926
00004.0000
[E,R+R*S;
O,S^2]
A^2==[E,R+R*S;
11111
通过验证,矩阵
成立。
2.产生5阶希尔伯特矩阵H和5阶帕斯卡矩阵P,且求其行列式的值Hh和Hp以及它们的条件数Th和Tp,判断哪个矩阵性能更好。
为什么?
H=hilb(5)
H=
1.00000.50000.33330.25000.2000
0.50000.33330.25000.20000.1667
0.33330.25000.20000.16670.1429
0.25000.20000.16670.14290.1250
0.20000.16670.14290.12500.1111
P=pascal(5)
P=
12345
1361015
14102035
15153570
Hh=det(H)
Hh=
3.7493e-12
Hp=det(P)
Hp=
1
Th=cond(H)
Th=
4.7661e+05
Tp=cond(P)
Tp=
8.5175e+03
答:
5阶帕斯卡矩阵P的性能好。
矩阵的性能是由条件数决定的,条件数越接近于1其性能就越好。
由上机操作求得Th=4.7661e+005,Tp=8.5175e+003。
Tp的值更接近于1则其性能要好。
所以5阶帕斯卡矩阵P的性能好。
3.建立一个5×
5矩阵,求它的行列式值、迹、秩和范数。
A=rand(5)
0.27850.97060.42180.03570.7431
0.54690.95720.91570.84910.3922
0.95750.48540.79220.93400.6555
0.96490.80030.95950.67870.1712
0.15760.14190.65570.75770.7060
det(A)
-0.1322
trace(A)
3.4127
rank(A)
5
norm(A)
3.2759
4.已知
求A的特征值及特征向量,并分析其数学意义。
A=[-29,6,18;
20,5,12;
-8,8,5]
-29618
20512
-885
[V,D]=eig(A)
V=
0.71300.28030.2733
-0.6084-0.78670.8725
0.34870.55010.4050
-25.316900
0-10.51820
0016.8351
在数学上,特别是线性代数中,对于一个给定的线性变换,它的特征向量(本征向量或称正规正交向量)是这样一个非零的向量v:
当v经过这个线性变换的作用之后,得到的新向量(长度也许改变)仍然与原来的v保持在同一条线上。
一个特征向量的长度在该线性变换下缩放的比例称为其特征值(本征值)。
如果特征值为正,则表示v在经过线性变换的作用后方向也不变;
如果特征值为负,说明方向会反转;
如果特征值为0,则是表示缩回零点。
但无论怎样,仍在同一条直线上。
5.下面是一个线性方程组:
(1)求方程的解。
(2)将方程右边向量元素b3改为0.53再求解,并比较b3的变化和解的相对变化。
(3)计算系数矩阵A的条件数并分析结论。
formatrat%用分数格式显示
A=[1/2,1/3,1/4;
1/3,1/4,1/5;
1/4,1/5,1/6]
1/21/31/4
1/31/41/5
1/41/51/6
format%恢复默认格式
b=[0.95;
0.67;
0.52]
b=
0.9500
0.6700
0.5200
X=A\b
X=
1.2000
0.6000
b2=[0.95;
0.53]
b2=
0.5300
X2=A\b2
X2=
3.0000
-6.6000
6.6000
D=cond(A)
1.3533e+03
矩阵的条件数决定矩阵的性能,条件数越接近于1其性能越好,系数矩阵A的条件数为1.3533e+003,和1相差很大,则其性能不好。
因此b矩阵个别元素的微小变动,对方程的解(X值)影响很大。
6.建立A矩阵,试比较sqrtm(A)和sqrt(A),分析它们的区别。
实验三选择结构程序设计
1.求分段函数的值。
用if语句实现,分别输出x=-5.0,-3.0,1.0,2.0,2.5,3.0,5.0时的y值。
程序设计:
clear;
x=[-5.0-3.01.02.02.53.05.0];
ifx<
0&
x~=-3
y=x.^2+x-6;
elseifx>
x<
5&
x~=2&
x~=3
y=x.^2-5*x+6;
else
y=x.^2-x-1;
end
y
运行结果:
y=
29.000011.0000-1.00001.00002.75005.000019.0000
2.输入一个百分制成绩,要求输出成绩等级A、B、C、D、E。
其中90分~100分为A,80分~89分为B,79分~79分为C,60分~69分为D,60分以下为E。
要求:
(1)分别用if语句和switch语句实现。
(一)用if语句
score=input('
请输入百分制成绩:
'
a=fix(score/10);
ifa==9|a==10
grade='
elseifa==8
B'
elseifa==7
C'
elseifa==6
D'
E'
grade
(二)用if语句
ifscore>
=90&
score<
=100
elseifscore>
=80&
90
=70&
80
=60&
70
(三)用switch语句
switchfix(score/10)
case{9,10}
case8
case7
case6
otherwise
(2)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。
=100%判断成绩合理性
switchfix(score/10)
otherwise
end
grade
else
disp('
error'
)%成绩不合理时输出出错信息
3.硅谷公司员工的工资计算方法如下:
(1)工作时数超过120小时者,超过部分加发15%。
(2)工作时数低于60小时者,扣发700元。
(3)其余按每小时84元计发。
试编程按输入的工号和该号员工的工时数,计算应发工资。
num=input('
请输入员工工号:
time=input('
请输入员工工时数:
iftime<
60
wages=time*84-700;
elseiftime>
120
wages=84*120+(time-120)*84*(1+0.15);
wages=time*84;
disp=(['
员工工号:
num2str(num)'
应发工资:
num2str(wages)])
4
35
disp=
4应发工资:
2240
4.设计程序,完成两位数的加、减、乘、除四则运算,即产生两个两位随机整数,再输入一个运算符号,做相应的运算,并显示相应的结果。
解:
a=floor(rand
(1)*90+10)
b=floor(rand
(1)*90+10)
c=input('
请输入运算符号:
'
s'
ifc=='
+'
s=a+b
elseifc=='
-'
s=a-b
*'
s=a*b
\'
s=a\b
)
a=
30
77
-
s=
-47
5.建立5×
6矩阵,要求输出矩阵第n行元素。
当n值超过矩阵的行数时,自动转为输出矩阵最后一行元素,并给出出错信息。
A=rand(5,6)
n=input('
n=?
ifn>
n<
=5
B=A(n,1:
6);
erro!
B=A(5,1:
B
0.77920.01190.52850.68920.91330.0782
0.93400.33710.16560.74820.15240.4427
0.12990.16220.60200.45050.82580.1067
0.56880.79430.26300.08380.53830.9619
0.46940.31120.65410.22900.99610.0046
3
n=
3
B=
实验四循环结构程序设计
1.根据
,求π的近似值。
当n分别取100、1000、10000时,结果是多少?
分别用循环结构和向量运算(使用sum函数)来实现。
程序设计
(一):
forn=[100,1000,10000]
sum=0;
forx=1:
n
sum=sum+1/(x.^2);
result=sqrt(6*sum)
result=
3.1321
3.1406
3.1415
程序设计
(二):
x=1:
n;
result=sqrt(6*sum(1./x./x))
3.1415
2.根据
,求:
(1)y<
3时的最大n值。
(2)与
(1)的n值对应的y值。
y=0;
n=1;
whiley<
y=y+1/(2*n-1);
n=n+1;
n=n-1;
y=y-1/(2*n-1)
n=n-1
2.9944
56
【
%验证n=56时的y值
clearall;
clc;
n=56;
i=1:
f=1./(2*i-1);
y=sum(f)
】
3.考虑以下迭代公式:
其中a、b为正的学数。
(1)编写程序求迭代的结果,迭代的终止条件为|xn+1-xn|≤10-5,迭代初值x0=1.0,迭代次数不超过500次。
(2)如果迭代过程收敛于r,那么r的准确值是
,当(a,b)的值取(1,1)、(8,3)、(10,0.1)时,分别对迭代结果和准确值进行比较。
a=input('
a=?
b=input('
b=?
x0=1;
x1=a/(b+x0);
y=abs(x1-x0);
whiley>
10^(-5)&
=499
x0=x1;
x1=a/(b+x0);
y=abs(x1-x0);
x1
%比较收敛准确值和迭代结果
r1=(-b+sqrt(b^2+4*a))/2
r2=(-b-sqrt(b^2+4*a))/2
1
x1=
0.6180
r1=
r2=
-1.6180
8
1.7016
-4.7016
a
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Matlab 上机 实验 答案