matlab实验报告2
- 格式:doc
- 大小:97.00 KB
- 文档页数:14
第二次上机作业
准备&要求:
1、 运行课件第三章(课本第四章)讲过的例子,掌握Matlab 的流程控制语句、函数及脚本文件的编程、调试方法。
2、 本次作业(4~12题)要求全部写M 文件;
3、 题目要求未明确要求写脚本文件还是函数文件的,学生自己决定是写脚本文件还是函数文件。只要能够实现要求。
4、 列出第二章课堂上出现过的所有函数,知道它们的作用并试着调用这些函数。 作业:
1. 继续完成第一次上机实验未完成的作业。
2. 分析脚本M 文件及函数M 文件的区别。
(1)脚本文件没有输入参数,也不返回输出参数,而函数文件可以带输入参数,也可以返回输出参数。
(2)脚本文件对MATLAB 工作空间中的变量进行操作,文件中所有命令的执行结果也完全返回到工作空间中,而函数文件中定义的变量为局部变量,当函数文件执行完毕时。这些变量被清除。
(3)脚本文件可以直接运行。在MATLAB 命令行窗口输入脚本文件的名字,就会顺序执行脚本文件中的命令。而函数文件不能直接运行,要以函数调用的方式来调用。
3. 已知⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡--=7613870451A ,⎥⎥⎥⎦
⎤⎢⎢⎢⎣⎡--=023352138B ,求下列表达式的值,并注意第(2)(3)小题表达式的结果有何特点:
(1)B A 6+ 、I B A +-2
(其中I 为单位阵);
>> A+6*B
ans =
47 23 -10
12 37 26
-15 73 7
>> A^2-B+I
ans =
-18 -217 17
22 533 109
21 867 526
(2)A*B、A.*B、B*A、B.*A;
>> A*B
ans =
14 14 16
-10 51 21
125 328 180
>> A.*B
ans =
-8 15 4
0 35 24
-9 122 0
>> B*A
ans =
-11 0 -15
7 228 53
3 -1 28
>> B.*A
ans =
-8 15 4
0 35 24
-9 122 0
(3)A/B、B\A、A./B、B.\A;
A/B
ans =
1.2234 -0.9255
2.9787
-0.9468 2.3511 -0.9574
4.6170 3.8723 13.8936
>> B\A
ans =
-0.5106 -8.6170 -1.1277
0.7340 17.5745 1.8085
-0.8830 -21.2128 0.4043
>> A./B
ans =
-0.1250 1.6667 4.0000
0 1.4000 2.6667
-1.0000 30.5000 Inf
>> B.\A
ans =
-0.1250 1.6667 4.0000
0 1.4000 2.6667
-1.0000 30.5000 Inf
(4)[A, B]、[A([1 3],:);B^2]。
>> [A,B]
ans =
-1 5 -4 8 3 -1
0 7 8 2 5 3
3 61 7 -3 2 0
>> [A([1 3],:);B^2]
ans =
-1 5 -4
3 61 7
73 37 1
17 37 13
-20 1 9
4. 求分段函数的值。
222603565231x x x x y x x x x x x x ⎧+-<≠-⎪=-+≤<≠≠⎨⎪--⎩
, 且, 0且及, 其它
用if 语句实现,分别输出x=-5.0,-3.0,1.0,2.0,2.5时的值。
x=input('请输入x的值:');
if x<0&x~=-3
y=x^2+x-6;
elseif 0<=x<5&x~=2&x~=3
y=x^2-5*x+6;
else
y=x^2-x-1;
end
Y
>> zuoye4
请输入x的值:-5.0
y =
14
>> zuoye4
请输入x的值:-3.0
y =
30
>> zuoye4
请输入x的值:1.0
y =
2
>> zuoye4
请输入x的值:2.0
y =
1
>> zuoye4
请输入x的值:2.5
y =
-0.2500
5.输入一个百分制成绩,要求输出成绩等级A、B、C、D、E。其中90分~100分为A,80分~89分为B,70分~79分为C,60分~69分为D,60分以下为E。
要求:分别用if语句和switch语句实现。
用if语句实现:x=input('请输入百分制成绩:');
if 90<=x&x<=100
disp('A');
elseif 80<=x&x<=89
disp('B');