matlab实验报告2

  • 格式:doc
  • 大小:97.00 KB
  • 文档页数:14

下载文档原格式

  / 14
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第二次上机作业

准备&要求:

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');