matlab第八讲教案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
西南科技大学本科生课程备课教案
计算机技术在安全工程中的应用
——Matlab入门及应用
授课教师:徐中慧
班级:
专业:安全技术及工程
第八章绘图
课型:新授课
教具:多媒体教学设备,matlab教学软件
一、目标与要求
掌握matlab中二维绘图、三维绘图、子图等相关图形绘制功能。
二、教学重点与难点
本堂课教学的重点在于引导学生在编写matlab程序时能够熟练运用绘图的相关函数实现相应的功能。
三、教学方法
本课程主要通过讲授法、演示法、练习法等相结合的方法来引导学生掌控本堂课的学习内容。
四、教学内容
课后习题讲解
(1)用switch/case,menu结构编写程序求解下列问题:提示用户输入入学时间是一年、二年、三年还是四年,输入数据是字符串。根据输入数据决定期末考试的时间。其中,一年级周一考试,二年级周二考试,三年级周三考试,四年级周四考试。
Input=menu('Enter a value for your grade','one year','two years','three years','four years');
switch Input
case 1
disp('Monday')
case 2
disp('Tuesday')
case 3
disp('Wednesday')
case 4
disp('Thursday')
end
(2)编写程序,提示用户输入购买方糖的数量,输入数据是糖的块数。计算购买方糖的费用。价格确定方法是:1块=$0.75;2块=1.25;3块=1.65。当多于3块时,总费用=$1.65+$0.30*(购买数量-3)。sugar=input('Enter a value for quantityof sugar\n');
switch sugar
case 1
fprintf('%3.0f lump sugar costs $0.75\n',sugar)
case 2
fprintf('%3.0f lump sugar cost $1.25\n',sugar)
case 3
fprintf('%3.0f lump sugar cost $1.65\n',sugar)
otherwise
output=1.65+0.3*(sugar-3);
fprintf('%3.0f lump sugars cost $%4.2f\n',sugar,output)
end
(3)用for循环结构求矢量元素的和,已知矢量x等于x=[1 23 43 72 87 56 98 33]
用函数sum检查计算结果,并用while重写一遍程序。
x=[1 23 43 72 87 56 98 33]; a=0;
for k=1:length(x)
a=a+x(k);
end
if a==sum(x)
disp(a)
else
disp('error')
end x=[1 23 43 72 87 56 98 33]; a=0;
k=1;
while k<=length(x)
a=a+x(k);
k=k+1;
end
if a==sum(x)
disp(a)
else
disp('error')
end
(4)用函数primes求小于100的素数,用for循环计算相邻两个素数的乘积。例如,前4个素数是
2 3 5 7
计算2*3 3*5 5*7
输出 6 15 35
x=primes(100);
for k=1:length(x)
if k+1 a=x(k)*x(k+1); b(k)=a; else break end end disp(b) 引言 大规模的数据表格很难直观表现信息内容,而工程师利用图形化技术可以使信息更加容易理解。图形化技术可以直观地反映出数据的变化趋势、最大值和最小值,也可以非常容易地检查出因计算或测量引起的错误数据点。而且,图形化数据可以让人迅速准确地判断所编写的程序是否能够得出正确的结果。(1)二维图形 ①基本绘图命令 在工程中最常用的图形是x-y坐标图。x-y坐标图就是用一系列有序数据标识出的二维坐标平面上的点,然后把这些点用直线连起来就构成二维图形。通过测量或计算得到x和y的坐标值,一般情况下,自变量x的值描绘在x轴上,因变量y的值描绘在y轴上。 %% 绘第一张图 x=0:0.2:2*pi; y=sin(x); plot(x,y) %绘制二维图形 %% 加修饰 title('绘制二维图形'); %添加标题 xlabel('自变量x');ylabel('因变量y'); %添加坐标轴标识 %% 加栅格 grid %添加栅格,grid on/grid off hold on%hold/hold on保持住当前图形,hold off覆盖当前图形 pause(10) %% 绘第二张图 y1=cos(x) plot(x,y1,'--o') %% 继续修饰 axis([0,2*pi,-1.2,1.2]) %设定坐标轴的范围 legend('sin(x)','cos(x)') %添加图例 gtext('sinx'); %添加文本框 gtext('cosx'); %添加文本框 命令描述运用 plot 创建一个x-y坐标图plot(x,y) title 添加标题title(‘my graph’) xlabel 添加x轴坐标xlabel(‘坐标轴名称’) ylabel 添加y轴坐标ylabel(‘坐标轴名称’) grid 添加栅格grid on添加栅格/grid off取消栅格 hold 定义当前图形hold on保持当前图形/hold off覆 盖当前图形 pause 暂停程序,观察图形pause暂停程序,按任意键继续pause(n)继续执行前中止执行程 序n秒 axis 如果没有输入参数,就将坐标轴固定在当前配置状态。再次输入axis 就是恢复对坐标轴的控制 axis(v) axis的输入参数是一个四维矢量,分别定义了x轴和y轴的最小值和最大值,例如:[xmin,xmax,ymin,ymax] legend legend(‘string1’,’string2’,etc),添加图例,对不同曲线加以说明text text(x_coordinate,y_coordinate,’string’),输入参数为文本框的位置和内容gtext gtext(’string’),添加文本框,框的位置由鼠标操作来确定