1、1案例作者 刘蕾 单位及邮编 海南省洋浦经济开发区洋浦中学(578101)电子信箱 联系电话案例名称适用教材 教育科学出版社 选修模块算法与程序设计第二章第 3 节教 学 设 计 表章节名称第二章 第三节第一课 顺序结构计划学时1 课时学习内容分析本节内容是算法与程序设计(选修)第二章第三节内容。前面课时的教学,让学生对算法、流程图、常量、变量等程序设计的预备知识有了初步的了解,但对如何灵活使用还没有清晰的概念。本课是程序设计三种结构的第一课,内容看似简单,但它的呈上启下作用非常明显,因此,更好的把预备知识融入到教学过程,不但能让学生可以深刻理解,灵活运用概念,同时也直接影响着分支结构、循环结
2、构的教学效率。学习者分析学习对象是高二的学生,玩的天性依然主导着他们对信息技术的学习态度。绝大多数学生从没编写过程序,程序设计对他们来说既是一个新鲜课程,也是在思维上和技术上都有一定的难度的头痛课程。因此,教学过程可以从“玩”出发,引起学生注意,引导他们积极思维,独立自主的解决问题。在教学任务的设定上,采取提出问题,给学生搭任务台阶,环环相扣,引导学生思维上路,深入理解教材,同时,也为领悟能力较强的学生设置了选做任务,进一步强化他们的分析、实践能力。课程标准:理解顺序结构概念;会使用程序设计语言实现顺序结构。知识与技能:理解程序设计的顺序结构基本思想;掌握顺序结构语句特点。过程与方法:能够使用
3、顺序结构编写简单的程序解决具体问题教学目标情感、态度与价值观:明确顺序结构在程序设计中的重要作用;体会什么样的问题适用顺序结构编程解决;体会顺序结构的局限性。体会不同编程语言在程序设计思想与算法实现的相通性。2重难点及解决措施教学重点:顺序结构特点教学难点:使用顺序结构解决程序问题。解决措施:用“机器人快车”AI-RCJ 竞赛软件,采用图形化界面,先编程,程序制作出来看到效果,再通过程序代码体会程序效果和语句之间的关系,结合课本得出概念;再运用概念读程序。教学设计思路用“机器人快车”AI-RCJ 竞赛软件,安排逐层递升的设计问题,让学生在会编写程序之后,再引出概念,使他们在娱乐的同时投入学习,
4、在学习的同时感到快乐。同时,变传统的“先理解概念,再学会编程”的费时费力费心的学习过程为“先能编制程序,再深刻理解概念”的轻松愉快的程序之旅,学习效果更为明显。依据理论算法与程序设计的教学,重点不在于对某一编程语言的学习,而是理解模块化程序设计的基本思想,初步掌握调试、运行程序的方法。 教学方法的最本质特征就是要促进大多数学生在课堂上积极参与,促进全体学生积极动脑。媒体 网络教室、多媒体课件 学生学件、“机器人快车”AI-RCJ 软件、VB 等课堂评价竞赛性评价,根据各课堂任务的不同小组完成情况,教师随时针对学习方法、情感态度和合作学习、完成速度、效果等方面进行评价。教师的评价要注重创造学习氛
5、围,激发学习兴趣,调动学习思维,增强学生克服困难的决心。教学过程教学环节教学内容时间教师活动 学生活动 设计意图课前准备为课堂教学作准备安装“机器人快车”AI-RCJ 软件;学生每两人分一小组。复习编程预备知识;预习本课内容。软硬件相应准备。机器人引题高科技机器人1分钟(视频演示机器人及机器人比赛片断)我们经常在报纸、电视、网络上看到各种各样的机器人大赛,我们现在也能做出机器人,你相信吗?课堂开始抛出学生认为“天方夜谭”的事情创设氛围,即调动好奇心,集中注意力,也能更好的让他们体验随后成功的快乐。3引出课题演示操作AI-RCJ快速体验2分钟1、界面简介:把运行界面看作平面直角坐标系,最左下角是
6、原点(0,0),界面上任何一点都可以用坐标表示。2、第一个程序:“让机器人移动到指定点”(详细操作见学案)结合学案观察、理解、学习教师的操作激发学生兴趣的同时降低第一个程序的操作难度。同时体会数学模型与程序设计的联系。练习巩固尝试 “第一个程序”3分钟巡视学生并给予适当辅导。 制作程序“让机器人移动到指定点” 初步体验成功,促进进一步探索。逐层深入开发“第二个程序”10分钟布置任务:第二个程序 A:“让机器人能够走 L型路线” 。第二个程序 B:“让机器人能够走 S型路线” 。要求:每小组的两人各做一个程序,可以讨论方法,但必须各自完成操作,两人全部完成才视为任务完成。【选做任务】第三个程序:
7、让机器人旋转 360 度。以小组为单位,探索第二个程序的实现步骤。领会力较强,速度较快的学生可以选做任务“第三个程序” ,强化分析、综合能力。体会程序流程,开发学生思维。采用两人独立完成各自的操作,以避免信息技术课堂的“等、靠”现象,让每个学生都参与到课堂中来。顺序结构概念引入绘制流程图,引出顺序结构概念7分钟1、用流程图的形式画出机器人走“L” (或)“S”型路线的过程。2、观察程序的源代码,你能说说,在这两个程序里,语句的执行有什么特点?3、有这样特点的程序结构是什么结构?1、绘制流程图(相关概念在课本P8 页)2、体会语句特点3、结合课本 P33页的概念理解“顺序结构” 。4、用自己的语
8、言说出什么是“顺序结构”5、思考:是否让机器人走“L” (或)“S”型路线只有一种编程方法?通过流程图的绘制深刻理解“顺序结构”概念,同时在顺序结构的学习中掌握流程图在实践中的使用。另外,可视学生完成情况让他们思考:是否走“L ”(或) “S”型路线只有一种方法,体会即时是最基本的顺序结构,可满足任务要求的编程方法也不只一个,认识程序设计的不唯一性。实践提高尝试“踢 5布置任务:第四个程序:“踢球一次”小组合作,共同讨论完成程序。在讨训练学生的分析能力和综合能力。4球” 分钟要求:小组为单位自行摸索,满足什么样的条件才能让机器人踢到球,并用程序验证你的想法。 (同时记录踢球一次后,球停止后的坐
9、标。 )【提示】在 AI-RCJ 的运行平台上可以看到球的位置坐标。论中进行思维的碰撞。学生学习习惯的养成教育:独立思考,合作讨论,动手动脑。能力提升顺序结构编程深入7分钟1、布置任务:第五个程序:“踢球两次”2、演示变量的使用(1 分钟)3、完成程序之后,观察源代码,说说程序在执行时的顺序是怎样的? 这些变量在程序中都起了什么作用?1、发现第二下踢球时,球的坐标无法预知,需要用变量随时获得球的位置2、编写带有变量的顺序结构程序。3、观察程序源代码,体会变量的作用:存储;传递。变量的相关概念在课本 P21 页表 2-4。学习编制带有变量的顺序结构程序,体会变量的作用,复习常量、变量、数据类型等
10、概念,达到灵活运用变量的目的,也对顺序结构可以编制什么样的程序,解决何种问题有深刻的体会。代码编写编写两变量交换的代码5分钟布置任务:结合顺序结构的特点,编写两个变量交换的程序代码,并说明为什么这样编写。(必须借助第三个变量吗?)1、 阅读课本 P33页程序。2、 关闭书本,独立编写代码。3、 说明为什么这样编写。4、 体会顺序结构特点及变量作用。两变量的交换问题是顺序结构的特殊实例,也是程序设计必须理解掌握的内容。通过编写两变量交换程序,对顺序结构执行有更清楚的认识。认识强化比较c 语言和vb语言的异同1分钟通过表格比较 c 语言和 vb 语言的异同。 (表格见学案)观察比较,得出结论:两者
11、在程序设计思想与算法实现等方面是相通的,但在具体用代码实现时即有相通的地方,也各有自己的特点。在上面的教学环节中,其实学生一直都有疑惑:课本讲授的是 vb程序,而教师授课却用c 语言,两者有什么联系吗?这个环节,通过表格比较,解答疑惑,也让学生体会不同编程语言在程序设计思想与算法实现的相通性。形成初步的模块化程序设计的基本思想。作业 作业布置 1布置任务:(该作业可根据教学情况调整为课堂任务或课后作业。 )结合前面课程所学的基础知识,尝试完成课后作业培养学生能用编写代码的形式完成程序的设计制作。5分钟用 VB 软件实现让机器人从一点走到另一点。提示:VB 中通过控制图形的左边距和上边距来控制图
12、形的位置。要求:1、能画出该程序的流程图2、能说出每条语句的作用。3、体会你编制的程序与在机器人快车中的程序有什么不同。小结强化知识点小结2分钟顺序结构的特点类似于我们人走路的那一种?顺序结构适用于编制什么样的程序?回答问题,加强理解。小结时不是死板的照搬课本,而是用平时生活中的路作比较,使学生强化概念,理解顺序结构的适用情况。拓展延伸问题思考延伸课堂1分钟思考:1、如果我要不停的撞击足球,直到射进大门为止,你能编出程序吗?2、你设计的机器人能避免乌龙球吗?考虑要设计满足这两个思考问题的程序需要具备什么条件。感知顺序结构的局限性,为后续课程“循环结构” 、 “选择结构”作准备。教学反思在以往的
13、有关程序设计的授课过程中,我发现,传统的“先理解概念,再学会编程”的方法,费时费力费心,教师费尽口舌使学生先明确各种基础知识,然后再去试着从最小的程序开始编制,教学方式往往存在着无趣、枯燥性,教师与学生之间缺乏互动性,这就使使得很多学生对知识点的理解上还停留在面上,容易产生厌学情绪,考试一完就把知识交还给老师了。 怎样才能让学生体会到程序学习的乐趣,并逐渐使他们喜欢上学习呢?采用直观编程工具 AI-RCJ 辅助,先在图形化界面里编制机器人小程序,再返回来看课本知识点和程序,观察、理解、编写代码,以寓教于乐的方式,使学生在学习的同时感到了快乐,而在娱乐的同时又发现自己目前的知识存储不能给自己更高
14、的支持,所以为了得到更多的快乐,又投入学习。通过玩,学习,玩,学习这样一个循序渐进的方式,来完成对知识点的学习,使程序设计的学习过程变为“先能编制程序,再深刻理解概念”的轻松愉快的程序之旅,学习效果更为明显。本课的教学内容“顺序结构”在概念上看似非常简单,易于理解,但由于之前课程教授的数据类6型、流程图等概念学生并没有深刻的理解,难以灵活运用。因此,本课教学除了让学生理解顺序结构之外,还具有不可替代的承上启下作用。许多老师可能都有这样的体会,顺序结构课程上完,到了分支结构、循环结构的教学,学生还是听得一头雾水,每节课似乎对学生来说都还是“全新”的,各个环节之间好像没有明显的联系。怎样把各个环节
15、贯穿起来呢?顺序结构就起了这样的作用。承上:让学生在编制程序的过程中,深刻理解流程图、变量等概念,把它们融为自己程序设计的基本素养,能够熟练驾驭这些概念。启下:不管是循环结构还是分支结构,顺序结构必然存在于其中,它是贯穿程序设计中的主线。切实掌握了顺序结构,也就能理解模块化程序设计的基本思想,初步掌握调试、运行程序等解决问题的一般方法。同时,学生会编程了(顺序结构) ,也就会在解决问题的过程中自然发现顺序结构在编程时的局限性,期待新的技术补充,期待循环、分支结构等的进一步学习。因此,顺序结构是否真正教学成功,我认为,不仅仅是学生知道了概念,会绘制流程,而还能根据实际情况选择适合的语句真正解决问题。板书设计程序设计的顺序结构: 代码是按照由上到下的顺序一行一行执行。在程序执行过程中,没有分支,没有重复,我们把这种结构称为顺序结构。顺序结构适用于:没有分支,没有重复的事件。不含变量的顺序结构含有变量的顺序结构