高一信息技术课程教案
课题:第六章第一节程序设计的基本方法
计划课时:1课时本课课时:1课时
教学目的:
1、理解算法的概念;
2、知道两种算法的描述方法—语言描述法和流程图的区别;
3、能初步掌握用流程图描述算法。
4、培养学生的理论联系实际能力和动手能力。
5、提高学生的信息技术素养和创新意识。
教学重点、难点
算法的描述、流程图
教具
教师机、投影仪、视频展示台、多媒体CAI课件
教学方法
以任务为主线、教师为主导、学生为主体的任务驱动式教学
教材分析
本节所讲算法主要是指计算机解决问题的方法和步骤。
美国著名计算机科学家克努特教授提出了”计算机科学就是研究算法的科学”的著名论断,说明了算法在设计程序中的重要性,解决任何问题都必须设计算法,所以本节内容起到统领全章的作用。
但是,对于初学者而言,本节内容属于理论知识,具有一定的抽象性。
建构主义理论认为学习是新旧知识的联系,是学习者主动建构内在心理结构的过程。
而在初学者原有的认知结构中没有关于算法的认知。
如果直接讲算法,学生很难实现新旧知识的联系,无法做到意义建构和有意义的学习,对于算法的含义就难以做到真正理解。
按照从感性到理性、从已知到未知的认知规律,我从学生的感性认知入手,从学生的兴趣出发,先创设情境,引入三个用VB编写的小程序,把学生的兴趣调动起来,通过对具体问题的讨论,使学生明白解决任何问题都需要有清晰的解决思路和解题步骤,计算机解决问题和人解决问题一样都需要有明确的解题步骤,而计算机的解题步骤就称为算法,这样就很自然地引入了算法的概念。
易于学生接受和理解。
对于本节内容的重难点,即算法的描述,主要是通过对实际问题的解决来突破的。
本节所讲算法
的实例,不在于程序的难易,而在于要易于学生接受。
【例6-1-1】交换两个杯中液体是为了便于学生理解【例6-1-2】交换两个变量的值而设计的。
【例6-1-3】找出三个人中最年轻的那位,【例6-1-4】1分钟的计时器,分别选取生活中的事例,培养学生的理论联系实际的能力。
关于语言描述算法及流程图描述算法的特点,我的做法是通过学生对二者的比较,既掌握了二者的区别,也知道了二者的优缺点。
在教学方法上,【例6-1-1】、【例6-1-2】、【例6-1-3】、【例6-1-4】、【思考题一】、【思考题二】、【思考题三】为本节的任务,由浅入深;教师为主导、循循而诱;学生为主体,学生通过讨论、回答、表演、玩拼图游戏、画流程图等方式积极参与,培养了学生的理论联系实践能力、动手能力及创新意识。
这对于学生来说,可以帮助他们减少学习VB的畏惧心理,又可以提高学习的兴趣。
对于今后学VB打下了良好的基础。
教学过程
[引入]
【课件展示】计时器、挖地鼠、贺卡
【教师】这些都是用VB做出来。
计算机是如何做出来的呢?要计算机解决问题,必须编写相应的程序。
今天这堂课我们学习:第六章第一节程序设计的基本方法
[讲授]
(一)算法的概念:
我们解决问题都需要遵循一定的方法和思路并正确的列出各个求解步骤。
计算机解决问题的求解步骤叫做算法。
【例6-1-1】交换两个杯中的液体。
〖学生〗学生讨论回答。
〖学生〗演示
【答案展示】展示文字描述。
【例6-1-2】交换两个变量中的数据。
【教师】讲解计算机中变量的概念,指出变量的特点:“喜新厌旧”。
〖学生〗学生讨论。
【教师】能否这样:x→y; y→x
【课件展示】
已知变量x和y中分别存放了数据,现在要交换其中的数据。
为了达到交换的目的,需要引进一个中间变量m,其算法如下:
①将x中的数据送给变量m,即x→m;
②将y中的数据送给变量x,即y→x;
③将m中的数据送给变量y,即m→y。
【例6-1-3】找出三个人中最年轻的那位。
〖学生〗学生讨论回答。
【教师】引导学生讨论解题思路:
设三个人的年龄分别为a,b,c再设置一个变量min,用于存放最小数。
先将a与b进行比较,把小者送给变量min,再把c与min 进行比较,若c<min,则将c的数值送给min,最后min中就是三个数中的最小数,
【课件展示】展示文字描述。
【例6-1-4】1分钟的计时器
【教师】这是对刚上课示例VB小程序中的计时器的简化。
〖学生〗学生讨论回答。
【课件展示】展示文字描述。
并配以教师的讲解分析。
①i=60
②判断i 是否大于等于0,若i大于等于0,则做循环体输出i;等待1秒; i=i-1
③若i小于0 ,则退出循环体,结束。
【课件展示】美国著名计算机科学家克努特教授(D.E.Knuth)提出了“计算机科学就是研究算法的科学”的著名论断。
算法的特点:可行性、确定性、有穷性、输出、输入
二、算法的描述:
1、自然语言:
如上面四个例子均用自然语言描述。
【教师】引导学生讨论语言描述的特点:易于理解和接受。
但对于复杂的问题描述太麻烦。
【教师】请说出下面这句话的含义:“这个人连老张也不认识”
〖学生〗学生讨论回答
【教师】由此可以看出语言描述有时有岐义,但计算机解决问题时每一步必须有清楚的定义,不能有二义性或模棱两可的解释,我们可以用另外一种方法来描述算法。
2、流程图
【课件展示】流程图的概念:
流程图是用一组几何图形表示各种类型的操作,在图形上用简明扼要的文字和符号表示具体的操作,并用带有箭头的流线表示操作的先后次序。
【课件展示】算法描述方法的比较:
【例6-1-2】交换两个变量中的数据(自然语言、流程图)
【教师】演示,如图1
【思考题一】输入三角形的底和高,求三角形的面积。
(流程图)
【展示学生作品】
【例6-1-3】找出三个人中最年轻的那位。
(自然语言、流程图)
〖学生〗操作拼图游戏。
如图2。
【思考题二】找出三个人中最年长的那位。
(流程图)
【展示学生作品】
【例6-1-4】1分钟的计时器。
(自然语言、流程图)
〖学生〗操作,如图3。
【思考题三】输出100以内的正整数。
(流程图)
【展示学生作品】
【教师】必须注意的是,流程图仅仅描述了算法,计算机是无法识别和执行用流程图表示的算法的,还必须使用某种计算机语言(如VB )编写出程序,然后让计算机运行此程序,才能得到所需的结果。
【课件展示】语言是工具,算法才是灵魂!所以掌握流程图显得尤其重要。
(三) 程序设计的基本步骤
(1)分析问题,画出流程图
(2)用计算机语言编程
(3)上机调试,直至通过 开 始
结 束 输入 x,y
x →m
y →x
m →y
输出 x,y 开 始 结 束
输入 a,b,c c →min 输出 min
a<b a →min b →min c<min Y
N Y N
【总结】算法的概念、算法的描述、流程图。