第一篇:算法及其实现教学设计
《算法及其实现》教学设计
XXXXX中学 XXX
一、教材分析
在前面的章节已经提到,用计算机解决实际问题的过程中,有两个重要的环节——设计算法、编制和运行程序实现算法,所以算法是学习程序设计的前提和依据。算法是理论知识,具有一定的抽象性,学生理解起来比较困难,为了不让学生害怕后面程序的学习,在选择例子的时候降低了难度,都是贴近学生生活易于理解的例子。上好本章的第一节,对学生学习算法和编程兴趣的影响十分重要。
二、学情分析
该课程的学习者是高中一年级的学生,这个阶段的学生已具有接受抽象事物的能力、同时逻辑思维、好奇心强,对新鲜事物和新理念、新知识兴趣浓厚,但是怕吃苦,遇到难题,易退缩。虽然通过初中信息技术课程的学习,掌握了一定的利用计算机解决问题的知识,然而大多数的同学对算法还是比较陌生的。基于这样的情况,在教学中,要尽量的把抽象的问题具体话,和生活中的事例紧密联系,化难为易,学以致用,激发学生的学习兴趣和动机,使同学们在快乐中学习算法及程序设计。
三、教学媒体 a)b)多媒体网络教室
教材、教学幻灯片、图片。
四、教学方法
主要以任务驱动法、小组讨论为主,讲授为辅。充分调动学生的主观能动性,已达到主动式学习、探究性学习和创新性学习。
五、教学目标
1、知识目标
(1)理解算法的含义,能从生活中准确举例说明使用算法的例子;
(2)了解算法的表示形式,有自然语言、伪代码、流程图;(3)掌握用流程图描述算法的方法。
2、技能目标
(1)培养学生分析、解决问题的能力;(2)会用流程图描述算法,解决问题。
3、情感目标
(1)让学生明白解决任何问题有应具有清晰地思路和步骤;
(2)通过对算法的设计,提高学生对算法的兴趣,培养学生的逻辑思维能力。
重点:1.如何分析问题、设计算法。2.流程图的画法。
难点:1.如何分析问题、设计算法。2.流程图的画法。
六、教学流程
(一)情景导入,引入新课(5分钟)
【教师活动】
(1)教师提出一个有趣的问题:一个农夫带着一条狼、一头山羊和一篮蔬菜要过河,但只有一条小船.乘船时,农夫只能带一样东西.当农夫在场的时候,这三样东西相安无事.一旦农夫不在,狼会吃羊,羊会吃菜。
(2)要求学生分组讨论设计一个方案,使农夫能安全地将这三样东西带过河.。
【学生活动】
(1)学生积极思考讨论问题。(2)派小组代表发表解决方案。
【教师活动】
(1)口述总结学生提出的方案
第一步,农夫带羊过河.第二步,农夫独自回来.第三步,农夫带狼过河.第四步,农夫带羊回来.第五步,农夫带蔬菜过河.第六步,农夫独自回来.第七步,农夫带羊过河
当然,也有可能学生会提出第二种方案: 第一步,农夫带羊过河.第二步, 农夫独自回来.第三步,农夫带蔬菜过河.第四步,农夫带羊回来.第五步,农夫带狼过河.第六步,农夫独自回来.第七步,农夫带羊过河.设计意图:通过这个有趣的问题,在学生的讨论中已无形的接触到算法,让同学对算法有一个初步的了解。
(二)循序渐进,引出算法(8分钟)
【 教师活动】
教师简单介绍算法的定义,即“算法”就是是解决方法的精确描述。从广义的角度来看,生活中到处存在着算法,乐谱是乐队演奏的算法,菜谱是厨师做菜的算法,广播操图解是广播体操的算法。
(2)让同学谈谈生活中,你还遇到什么样的算法。【学生活动】
(1)认真听讲,做好笔记(2)积极发言。
设计意图:为了使抽象的知识更加具体化,联系生活中的实例,让学生从生活中发现知识,易于理解后面的知识。
(三)逐步深入,突破重、难点(15分钟)【 教师活动】
(1)教师讲述算法的表现形式——自然语言、伪代码、流程图。(2)结合PPT,讲述流程中常用的几种符号。
处理框(矩形框),表示一般的处理功能。
判断框(菱形框),表示对一个给定的条件进行判断,根据给定的条件是否成立决定如何执行其后的操作。它有一个入口,二个出口。
输入输出框(平行四边形框)。
起止框(圆弧形框),表示流程开始或结束。
连接点(圆圈),用于将画在不同地方的流程线连接起来。如图中有两个以1标志的连接点(在连接点圈中写上“l”)则表示这两个点是连接在一起的,相当于一个点一样。用连接点,可以避免流程线的交叉或过长,使流程图清晰。
流程线(指向线),表示流程的路径和方向。
解释框, 是为了对流程图中某些框的操作做必要的补充说明,以帮助阅读流程图的人更好地理解流程图的作用。它不是流程图中必要的部分,不反映流程和操作。
(3)引导学生看课件中学校上体育课的流程图。【 学生活动】
(1)认真听课,了解算法的表现形式。(2)了解流程图的画法。
设计意图:这部分的知识是本堂课的重点和难点,让学生自主学习课本,掌握知识,提高学生的总结、归纳、表达对于他们的学习很重要。
(四)层层展开、巩固新知识(8分钟)
【教师活动】
(1)引导学生思考课件中提出的问题(2)教师分析课件中的流程图得出最终结果
【学生活动】
(1)积极讨论思考,回答教师的提问。
设计意图:通过练习,巩固学生对新知识的掌握,同时通过学生的回答,老师对学生知识的掌握情况有所了解。
(五)课堂总结(3分钟)【教师活动】
(1)老师以提问的方式,什么是算法,算法的表现形式,自然语言和流程图的对比。
【学生活动】
(1)积极回答教师的提问,回顾本节的知识点。设计意图:进一步巩固加深学生对本堂课知识的理解。
(六)布置课后作业(1分钟)【 教师活动】
给出三个数a、b、c,请问如何判断出最大数?并画出流程图 【学生活动】(1)课后认真完成。
设计意图:进一步巩固学生对知识的理解。
第二篇:算法及其实现 教学设计(第一课时)
《3.4算法及其实现》教学设计(第一课时)
一、设计思想
随着新课程改革的深入,信息技术课程理念发生了巨大的变化,具体表现为:强调培养学生的信息素养;为学生打造终身学习的平台;关照全体学生的发展;强调培养学生解决问题的能力,运用信息技术创新实践的能力,与人交流合作的能力。新课程要求教师必须改变传统的“教教材”,要 “用教材去教”,要求教学模式由以往的“以教师为主体”转变到“以学生为主体”,提倡“任务型”教学,关注学生的情感态度价值观。
本节课我根据新课标,结合学生的特点对教材的内容进行了深入的挖掘和思考,创作了学生学案,创设丰富的教学情境,提供多样的学习资源。教学以生活中的实际问题和有趣故事作为任务驱动,让学生采用自主、合作、探究、体验等学习方式,通过意义建构获得新知,充分体现学生的主体地位。
二、教材分析
《算法及其实现》是普通高中课程标准实验教科书——《信息技术基础(浙江教育出版社)》的第三章第四节内容,该教材是按照高中信息技术课程标准编写的实验教材。通过学习本节内容可以达到“初步掌握用计算机进行信息处理的几种基本方法,认识其工作过程与基本特征”的课程标准要求。
本节内容是第三章的难点,介绍了算法的基本概念和算法的表示方法。相比较前三节的内容要抽象的多,二本节又是第四节的第一课时,是第二课时《程序设计实例》的知识基础,起到承上启下的作用。本节的学习重点是算法的概念、特点及表示方法;难点是用流程图描述算法。
三、学情分析
从思维品质上来说:高一学生已有使用计算机的感性经验,已经可以 超越简单的技术操作,具备了接受更高层面文化的能力。学生的思维能力已接近成人,他们有旺盛的求知欲,较高的学习自觉性,并具备一定的自学能力,已具有较强抽象思维和逻辑推理能力。
从知识储备上来说:经过前面的学习,学生已经可以使用计算机处理一些实际问题,例如:利用计算机对文字、图片、多媒体信息的处理,但是学生还不了解了使用计算机解决问题的一般过程和解决方法,以及以何种方式来表示。
四、教学目标
(一)、知识与技能:
1、理解算法的含义;
2、了解算法的特点及表示方法;
3、学会用流程图表示算法。
(二)、过程与方法:
1、能初步利用算法解决简单的问题;
2、培养学生的理论联系实际能力和动手操作能力。
(三)、情感态度与价值观:
1、培养学生学习信息技术课程的兴趣;
2、培养学生主动探究和合作学习的意识和能力。
五、重点难点
教学重点:算法的含义、及表示方法 教学难点:用流程图描述算法
六、教学策略与方法
1、学案导学,自主学习
2、问题导入,激情引趣。
3、创设情境,任务驱动。
4、合作探究,交流提高。
七、课前准备
1.教材、教材配套的教师用书、配套光盘 2.学生学案 3.教学课件
4、多媒体教室/大屏幕投影仪
5、将学生分为4人一组,每组都有优、中、差三个不同层次的学生。
八、教学过程
(一)新课导入
同学们,上节课我们讲了声音和视频处理,都是要利用计算机内存储的应用软件来解决处理问题,同样,像我们之前学习的文字处理软件、表格处理软件、多媒体报告处理软件也都是已经编制好的软件帮助我们处理信息。
但是,也有许多问题是没有现成的软件可以借用的,因此,我们必须根据不同的问题和工作要求,设计针对特定问题的解题步骤,编制专用的软件来解决这些问题。
今天开始我们一起来看看如何实际编写一个简单的程序来解决一个特定的问题。
(二)新课教学
1、算法
(1)师生共同完成游戏
师:首先,我们一起来做一个农夫过河的游戏(游戏内容分别用文字和flash动画显示在屏幕上),请同学们按小组讨论,帮农夫设计一个具体的步骤,安全地将这三样东西带过河。
生:分组讨论过河的方案,最终得出了成功的方案。
师:让小组代表与全班同学分享各自的方案,评价各组的方案进而得出正确的步骤并总结:
同学们,这6个步骤是这个游戏中是不可缺少的动作,否则就不能完成总体目标,使问题获得圆满解决。因此,在解决某一问题时我们要把各个步骤都精确的考虑到。
上面这个例子中的解决问题的步骤其实就是编制程序的基础:算法。设计意图:游戏激发学生的兴趣,让学生在完成游戏中已经编出了一个解决问题的算法,让学生轻松进入新知识的学习。
(2)学生阅读,完成学案
师:现在请大家阅读课本3.4.1第一二自然段,完成学案1、2、3题。学生:阅读课本制定内容,完成学案。
学生完成学案时,教师要走进学生,观察学生的完成情况。完成后,学生要对学案的完成做简要展示,教师要对学生的完成情况作简要总结。
师:大家完成的都很好,请同学们告诉我有那些生活中算法的实例呢? 生:回答(多样)
师:大家说的都很好,乐谱、菜谱、广播体操图解、搬家的次序等等都是生活中的算法,就拿“搬家”来说,是不是设计的次序不一样,搬家的效果就不一样呢?也就是说,解决同一个问题,会有很多种不同的算法,那么什么样的算法更好一点呢?
现在请大家阅读课本3.4.1剩余部分,完成学案4题。学生完成学案时教师引导:
师:方法甲和其他两个方案比较优秀在哪里?节省了什么?
我们在设计算法时应如何做呢? 生:回答
设计意图:以学案的形式给学生一个一个的任务,让学生自己去尝试、探究,然后在教师的指导下进行小结,接下来再尝试,这样就形成螺旋式的知识学习和能力提高过程。学生的主动和教师的主导都得到充分的发挥。在本节课的教学设计中,教师重视的不应该是结果,而是过程。
2、算法的表示
(1)常见算法的表示形式
师:大家已经知道我们可以编写算法来解决生活中的问题,那么我们可以用什么形式来表示算法呢?请大家阅读课本3.4.2第1自然段,完成学案5题。
完成后要挑选学生回答。(2)流程图
师:通过大家的阅读和总结,流程图是形象直观,便于掌握的描述算法的形式,因此我们需要认真学习如何用流程图描述算法,现在请大家阅读课本3.4.2中2、3、4自然段,完成学案第6题。
生:完成学案第6题。(3)用流程图描述算法
师:我们已经知道了流程图的功能,现在我们就尝试着用流程图来表示算法,需要注意的是在用流程图描述算法之前必须能能够用自然语言描述算法,否则也无法用流程图来描述。
操作一:将大象装冰箱
操作一由老师讲解演示,学生听讲。
操作二:学校上体育课,一般在操场上课,遇到下雨或下雪,改到室内上课,用流程图表示。
操作二由学生独立完成。
生:听老师讲解完操作一之后,完成学案的第7、8题。
操作三:对任意输入的三个整数x,y和z,找出并输出其中的最大值。
操作三老师讲解。
师:操作三用自然语言描述: 1.输入变量x,y,z
2.比较x,y。如果x>y,则x存入以max命名的存储单元中;否则,y存入max 3.比较z和max。如果z>max,则将z存入max。4.输出max。用流程图描述:
课堂练习:对任意输入的三个整数x,y和z,找出并输出其中的最小值。用流程图表示。
听老师讲解后,完成学案第9、10题。
设计意图:本环节设计是充分调动学生的积极性和主动性。教学中不断的给学生新的任务,让学生主动学习,增强技能,在练习设计中注意难度的梯度,让学生不断的战胜困难,而不是一下就被困难吓倒。最后,通过不断的练习,让学生真正掌握知识和技能。
(三)课堂小结
本节课学习了算法的定义、特征、优化和算法的表示方式,并着重学习了如何用流程图表示算法。请同学们在课后完成学案第11、12题,并在小组之间交流。
九、课后作业
1、完成教材P71页上的“练一练”中的第(1)、(2)两题。
2、观察猜数字游戏,尝试画出猜数字游戏算法的流程图。
设计意图:课后作业分为课内作业和课外拓展两部分,让不同层次的学生分别完成。课外拓展部分的算法比较复杂,涉及到了循环结构,可让学生在完成思索的过程中预习第二课时的内容。
十、学生学案(另附)
【问题研讨】
1、信息技术教育,采用任务驱动的形式,围绕一个能激起学生浓厚兴趣的主题展开教学,以学生的探究过程作为学习载体,较之与传统的信息技术课教学,以单纯的计算机知识和计算机操作作为教学内容,更能激发学生强烈的学习欲望。
2、采用学案导学的方式,学生手中都有学案,方便了学习,梳理了思路,提高了效率,更主要的是真正实现了学生主动学习,教师只是引导的教学模式,更加贴近新课程改革的要求。
3、以小组协作学习方式展开教学,使学生的知识、技能的获取变成了多渠道。学生相互之间的只言片语,远胜于教师长篇大论的讲解和繁琐的演示操作,大大提高学生的学习效率和学习兴趣。同时高、中、低不同层次的学生组成小组,充分利用优秀学生资源,进行同伴互助,缩小生生间的差距,改变两极分化的现状。同时也减少教师的课堂工作量,避免了很多学生同时提问教师忙不过来的尴尬局面。
4、自主探究的学习方式,要求学生具有一定的知识准备,并不适合于所有内容的教学。当学生对所要学习的知识毫无所知时,让学生去自主探究要花费很多的时间和精力,大大降低了学生的学习效率,由于受课时限制应有选择的采用。
第三篇:《对分查找及其算法实现》教学设计
《对分查找及其算法实现》教学设计
湖北省巴东县第一高级中学 刘少银
一、教材学情分析
本次课是浙江版高中信息技术选修教材《算法与程序设计》第二章算法实例第四节查找中的一部分内容。由于教材体系不适合校本实际,我们在教学过程中对教材体系作了如下调整。
讲授顺序:第一章 算法和算法的表示、第三章 面向对象的程序设计的基本知识、第四章 VB程序设计初步、第二章算法实例,第五章 算法实例的程序实现穿插在相关内容教学中完成。
因此在前期教学中学生已经初步掌握了算法基础及算法表示,VB程序设计初步等。本次课是让学生掌握对分查找的思想及算法的实现。
二、教学目标
知识与技能:理解对分查找的基本含义、方法,理解并能画出对分查找的流程图;
过程与方法:通过案例分析、直观观察,增强分析问题和解决问题的能力;
情感、态度与价值观:感受信息技术与现实生活的关联,激发对信息技术学科的求知欲,培养主动学习和使用信息技术的意识;养成科学的学习态度,不迷信书本、不迷信权威。
三、教学重难点
教学重点:对分查找的基本方法及注意事项;
教学难点:对分查找算法的实现。
四、教学策略
·以“猜数”游戏导入,引入对分查找的概念;
·师生讨论、生生讨论、生生互助;分析、归纳、总结,理解并掌握对分查找的基本思想;
·采用分类研究、分享成果、课后练习等学习方法,理解对分查找方法及基本主要特征;
·采用自然评价、师生评价、生生评价等形式对学习进行过程性评价。
五、教学过程
1.游戏激趣,释疑对分查找
(三个程序图片)
(初始界面)(人工猜数界面)(程序猜数界面)
准备:几张白纸,一支记号笔。启动猜数程序。
师:同学们好!大家看到前面的程序了吗?它是一个什么程序呢?
同学:猜数游戏程序。
师:对,这是我用VB针对李泳主持的“幸运52”中猜商品价格环节开发的一款程序,我先来说说针对主持人的部分:当李泳宣布商品的价格范围时,比如10000元内,猜商品价格的人就可以在猜数范围栏起始栏填上“0”,终至栏填“10000”,然后再将鼠标移到猜数栏中单击,程序即提示:“准备!倒计时30秒”,当单击提示处,猜价格倒计时开始,猜价格人即可在猜数栏上填上所猜价格的数值,然后根据主持人的提示,选择“不对”重新填写商品价格或选择“正确”让所猜价格在“猜得结果”栏内显示正确结果并停止计时,提示栏中即显示“您猜了M次,对了,恭喜您”。
师:大家觉得程序光有这样的功能神奇吗?
生:不神奇。
师:对,我也是这样认为的。这个程序神奇的地方在它能帮助猜商品价格人在规定的时间内,根据主持人的提示准确地猜出商品的价格,而且猜中率100%,所以现在“幸运52”停播了,大家知道为什么吗?
生:不知道。
师:就是因为我开发了这个程序呀!
生:(有的说信,有的抱着怀疑的态度不吭声,也有说不信的)
师:有同学愿意上来试试吗?
师:你在纸上写下你的数值范围和要猜的数,然后给大家看一下,别说出来,别让电脑听见了。
师:好,操作程序让程序帮忙把写的数找出来。
(程序找到正确的数)
师:神奇吧。
师:还有那位同学愿意试一下。
师:同样,你还是先写下要猜的数和范围100~200,这次我们不让大家看到他要猜的数,请大家帮忙记下程序每次出现的数字。
师:电脑程序也猜出了正确结果:132。
程序给出的数字是:
第一个数是:150
第二个数是:12
5第三个数是:137
第四个数是:1
31第五个数是:13
4最后是:13
2大家能看出什么规律了吗?
生:看不出
师:单纯从这几个数当中是看不出什么规律,现在我们依次把这些数放到数轴上,再看一下,大家看能找出什么规律呢?
同学发言„„
师:大家认为他说的怎样?为什么不鼓掌呀!
师:对,正如刚才的同学说的那样,程序是在给定范围内依次找中点方法来找到我们要找的最终数值,这就是我们今天要讨论的一种新的查找方法:对分查找。
师:我们刚才的游戏中的数列是序的吗?
生:是有序的,升序排列的。
师:如果是降序能用对分查找方式查找吗?
生:能。
师:大家想一想,如果我们打乱数据的排序顺序,在没有排序的数列中能否用对分查找的方法,找到我们想找到的数据?
同学:不能。
师:对,这就是对分查找方法的一个特征,或称为条件。因为我们是根据数据的大小找到它在数列中的位置。
【设计意图】通过游戏和对程序给出数值在数轴上的分布分析,让学生初步理解和掌握对分查找的方法及前提条件,为后一阶段对分查找算法的实现作好铺垫。
2.分析实例,实现对分查找算法
师:下面我们一起来看一下程序是怎样一步一步的给出以上数据并最终找到“132”这个数的。
师:首先在100至200之间找中点,然后再用中点值150与所要找的数132比较,得出的结论是所要找的数在100至150之间的数,一下数值的范围就缩小了一半,终止变量j的值就由200变成了150;第二次查找时,程序就给出100至150的中点值125;当程序进行第三次查找时,起始变量i的值就被修改为125,它们的中点值应该是:(125 150)/2=137.5。有小数了,怎么办?
生:„„(有点茫然)
师:对于小数,程序可以继续查找,但有可能要增加查找次数。为了保证在整数范围内查找,我们就要对含小数的中间值进行处理:取整。大家还记得我们学过VB的取整函数吗?
生:int。
师:对。即int(137.5),结果是多少?
生:137。
师:所以我们查找i到j范围内的中点值的表达式应该为:m=int((i j)/2)。
师:依次类推,程序会依次给出131、134、132即找到了要找的数。
师:请同学们根据算法逐步求精的原则在下面画出流程图。
(展示如下流程图,然后请同学完成完善对分查找的算法流程图)
流程图补充完善后的结果:
【设计意图】通过对程序给出中间数的分析,帮助学生理解对分查找算法实现的方法,为学生顺利完成对分查找算法流程图给予理论与实践上的支持。
3.推出特例,完善对分查找算法
师:同学们,刚才我们完成的对分查找的流程图;下面请同学们用刚才的查找方法分析一下在199至200范围内要找200这个数,能找到吗?为什么?如何解决这个问题?
(将教室内学生按座位分成若干组,进行讨论。每个组推选一名小 组长,完成后作小组发言)
„„
(每一小组完成发言后,老师或点评,或让学生点评)
师:根据刚才同学的讨论分析,那我们先前给出的流程图就有了一些缺陷,怎么修改?
(在同学们的发言声中,修改完善流程图)
修改后的流程图如下:
【设计意图】给出特例,让学生相互讨论、互助学习,归纳总结出上述流程图中出现问题的症结所在,并给出正确的流程图;由此可让学生体验到科学探究的方法,从而培养学生的科学态度与探索精神。
六、课后作业
师:1.在前面的取整中我们用了取整函数int,大家想一想能不能用四舍五入函数处理?如果用四舍五入函数(round)处理,流程图又将怎样修改?
2.请看教材P40-43,比较我们所给出的流程图与教材上的流程图有什么差异?两个流程图最后结果是否一致,那个流程图的结果有问题,问题是怎么造成的?请写出一篇500—800字的小论文。
(提示:认真阅读教材P40至P43内容,并分析教材中所给算法的逻辑错误)
作业提交方式:电子邮件(校内、校外均可)
邮件名称:登分号 姓名 论文题目
作业提交地址:bdxyz@.com
【设计意图】作业(1)扩充课堂内容,丰富学生知识面,丰富学生分别学习内容;作业(2)通过两个流程图之间差异性比较,引导学生判别书本上所给出流程图的逻辑错误,从而培养学生:1.科学的学习态度和精神,不迷信教材、不迷信权威;2.运用论文等形式来表达自己观点;3.通过学生自己的分析、探索,找出教材中的错误。
七、教学反思
整节课充满了笑声和掌声,课堂气氛活跃,学生参与度高。老师的主导作用和学生的主体地位得到了充分的体现。学生在师生互动、生生讨论、生生互助中比较好地掌握了对分查找的思想和算法实现,教学效果好。但由于时间关系,没有将程序的源代码展示给学生,让学生有一种意犹未尽的感觉是本次课的一个缺憾。
第四篇:算法教学设计
3.4算法及其表示 智能吸尘器算法简单分析
【教材分析】 本节教材的地位、作用等分析。
本节教材位于高中信息技术必修模块第三章中:“算法及其实现”部分内容,本节课的学习目的是使学生体验算法思想,了解算法和程序设计在解决问题过程中的地位和作用;体验信息技术中算法的魅力,为学生选修算法模块奠定基础。
【学情分析】
算法是我们信息技术基础模块的最难的一块内容,课时又少,只有两课时,如果初中信息技术正常开展,那么这个内容也容易开展。
【教学目标】
1.知识与技能
理解算法的含义,体会算法在程序设计中的地位; 培养用计算机编程解决现实问题的能力。2.过程与方法
能通过观察吸尘器的工作来分析其算法,培养学生用程序设计的思想来思考产品。3.情感态度与价值观
引导学生了解程序设计的更多知识,体验信息技术的强大魅力; 激发学生对计算机编程解决现实问题的学习欲望,提高学习兴趣。渗透人文教育,懂得感恩。
【重点难点】
教学重点:算法的特征;算法的表示 教学难点:对算法的理解,流程图
【设计思想】
新课标强调要“培养解决问题的能力,倡导运用信息技术进行创新实践”,以前教学中我一直从面到点,先讲算法的定义和特点,再举例,效果不是很好,学生印象不深,往往到学期结束的时候,对算法印象全无。
因此,这次在设计本节内容的时候,在选择实例的时候,我从两点考虑:一是生活化,选择的例子尽可能贴近生活,既要达到吸引学生的目的,又能体现技术的真实内涵(现在的学生,生活自理能力太差了);二是通过把抽象的问题分析成为具体步骤或方法,从而形成算法,让学生理解计算机解决问题的基本过程。
我在选择实例的时候,尽量让这个例子能贯穿整堂课,把一个问题分析透,印象会深刻。
【教学流程】
导入
师:喜欢干家务吗? 生:不喜欢
师:可是有一个人就是无怨无悔的做着家务(渗透人文教育,懂得感恩)生:谁?
师:“马大嫂”,你们认识“马大嫂”吗?每个家庭都有。生:领悟
师: “马大嫂”在我们同学们的年纪时,也是不喜欢干家务的,是什么让他们无怨无悔的干着家务?作为他们的孩子,我们有没有想过替他们分担一点?或者当我们长到“马大嫂”的年龄,我们能不能让家庭生活轻松一些?
生:讨论
师:家庭的智能化脚步离我们越来越近,我们的生活里随处可见,比如有定时功能的家电,洗衣机、洗碗机,今天我给大家推荐一款“买汰扫”的扫:智能吸尘器。(引导学生用计算机编程来解决现实问题)
首先声明,我不是搞推销的,而是带领大家去设计生产产品的。今天我们一起来分析、设计一款智能吸尘器。
首先,我们分析一下原始的手工操作吸尘器的工作需要几步? 新课(先把复杂的问题简单化,得出大的方向,然后逐步细化)生:三步,打开电源、开始工作、关闭电源
师:看来你们都是宋丹丹的徒弟,其实这也是我们用计算机解决实际问题的思维:先设计算法、再编制程序来实现算法。
师:什么是算法呢?算法是解决问题的方法和步骤,同学们用的是自然语言描述的算法,我是用流程图来描述算法。
算法描述的方法和步骤应该是有限的,有开必有关;有Begin必有End;
同学们是不是有被忽悠的感觉?有,就说明了我们的同学想的更远了,是啊,我这个算什么算法,跟本没解决什么问题,对了,算法还有一个定义,解题方法的精确描述,我这个算法的步骤有了,但不够精确描述,所以我们要自顶向下,逐步求精。师:你们说哪个步骤需要细化? 生:第二步
师:那你们觉得吸尘器要体现智能,应该从哪些方面考虑? 生:讨论
归结你们的观点,主要有三个:设定清洁路线模块,躲避障碍物模块,自动充电程序 设定清洁路线模块
师:你们拖过地吗?如果让你来拖地,你会选择怎样的路线既能减少重复路线,又能全部覆盖? 好,我们模拟一下,(用flash 规定几个相同的区域,然后计时擦除)把橡皮擦当成我们的吸尘器,擦除前景颜色并计时,……通过大家的实践,我们可以看出几种方案比较科学,通过这个试验,我们知道解决问题的方法有很多,生活中也一样,关键是要选择合适的一种,达到既快又好.这是我们在最优环境下的情况,没有考虑实际情况。我们看看具体的设计
前面同学们提到躲避障碍物是设计的关键。躲避障碍物模块
师:躲避障碍物模块是体现吸尘器智能的关键一点,我们先分析碰到墙壁怎么处理,只要碰到墙壁能处理,其他的是不是也是一个道理?
现在我请同学们描述一下碰到墙壁这个算法。
真了不起,你们用自然语言描述了这个算法,我习惯用流程图来描述。请看我的算法
这个算法同样比较粗糙,我们一起把它修正一下,首先要确定哪些地方需要细化,对了,是怎样判断“有没有碰到墙壁?”,这是核心,你们认为怎样判断好?请大家在纸上设计设计
还有没有其它需要修正的?对了,怎样“转变方向”也要细化,你们认为怎样改变方向好?
就这个流程图本身,还有什么地方需要修正的吗?Y和N线路里有相同的语句,我们可以把
它提出来,放在合并后的线路中.好,我们把经过大家修改后的算法称为智能清扫模块
自动充电程序
我们还少了一个关键模块,地没扫完,电没了怎么办?
现在请同学们参考智能清扫模块的流程图,画一画碰到电不足了那一刻怎么处理的算法。
学生上台画流程图,根据学生的流程图修正,得到循环结构。回顾小结
现在我们回顾一下我们设计智能吸尘器的过程:首先我们把复杂的问题简单化,设计了一个三步走的算法,然后,选择了一个最优路线,再设计了一个具有智能的障碍物躲避模块和自动充电模块,在第一个流程图里我们提出了算法要有开始和结束,即算法的有限性;最优路线里我们得出了最优算法;障碍物躲避模块我们提出了可行性和没有二义性。
针对以上算法,从开始到结束都离不开这三种情况,就像我们的生活,有可能一路直行、也有可能碰到分叉口、还有就是回到原路,还有没有其他的可能?这就如同我们的算法,所以这三种我们就称为基本结构,由这些基本结构组合成大的程序。
拓展
有了算法,程序实现就容易了,经过我们一起设计的第一代机器人初具模型,请看我们的作品(展示物体碰撞的动画),再看看我写的代码,一些简单的语句你们也看得懂,比如我们的核心模块„„
我们用一节课的时间就已经设计出这样的产品,如果学了一本书,读了四年的大学,你们的产品不知要好到哪里,到时候别忘了给全班同学发一个哦。
课外作业
研究了智能吸尘器,你们有什么启发?那么我们就一起设计一下自己未来的家庭生活吧?
只有想不到的,没有做不到的。想法高于一切,这个想法就是我们今天讲的算法,它不单单存在于我们的计算机行业,生活中处处可见,希望大家做个有心人,好好设计自己未来的生活,设计不好,继续马大嫂的生活。
第五篇:分支结构算法的实现教学设计
分支结构算法的实现教学设计
教学目标:
1、知识与技能:理解程序设计分支结构基本思想;掌握分支结构语句特点
2、过程与方法:学会用算法分析问题;能够使用分支结构编写简单的程序解决具体问题
3、情感态度与价值观:体会用结构化方法解决数学问题的便捷性;明确结构化在程序设计中的重要作用;激励尝试使用多种方法解决问题;培养良好的编程习惯和态度。
教学重点:
1、理解程序设计的分支结构基本思想;
2、熟悉IF语句及掌握IF语句的运用; 教学难点:
1、分支结构实现语句的格式和功能;
2、编写简单的程序的过程;
3、变量的特点。教学方法:
任务驱动法、演示法、讲解法、师生互动法 课时安排:一课时 教学设计:
1、教学对象分析
本课适用于高中二年级学生。这一阶段的学生具备一定的数学基础和具有一定的比较、归纳能力,是一个正处在抽象逻辑思维已初步形成并继续发展的阶段。学习分支结构程序设计就是要在这些基础上,借助具体事务为载体,了解程序解决问题的条件与办法。在学习本课之前,学生已经掌握pascal程序的编写与运行方法,了解顺序程序结构的执行流程。
2、教学需要分析
本节课在有多媒体教学软件的机房上课。通过再度开发课程资源(《信息技术》第四册第四章第二节《分支结构算法的实现》)和充分利用学生发言的现场事件进行有效讲授,激发学生的探究热情,努力创设师生之间的互动场景,使学生在讨论中协作学习,在发言中共享学习成果。
本节课在教师设疑、讲解和学生分析、讨论、发言等基础上进行的,主要运用的教学方法是任务驱动法。教师讲解的过程就是不断地“否定”前面的结论,提出新问题(任务)、请同学们分析问题,提出解决方案,帮助学生解决问题的过程。
在授课过程中,要根据课堂现场发生的事件,随时调整教学内容,当学生的讨论发言偏离本节课的教学目标和内容时,要机智处理。
教学过程: 导入:
1、阅读句子,总结规律。
如果天气好,就去打球,否则留在家里。
如果答对了,就会得分,否则就会扣分。
如果„„就„„(否则„„)
2、在Pascal中,这种根据不同的情况转向不同的分支来处理的程序结构就是分支结构。
If„„then„„(else„„)
(学生讨论、发言,教师引导他们注意if、then、else三个词,并为这些按条件语句的一般形式划分部分)
【学生归纳】
条件语句的一般形式:
格式一:if 条件 then 语句组
格式二:if 条件 then 语句组1 else 语句组2 【教师说明】
格式一功能:当条件满足时执行then后语句组,否则跳过此行执行下一行。格式二功能:当条件满足时执行语句组1,否则执行语句组2。例题讲解
编写程序,实现人机对话,电脑显示“你快乐吗?(Y OR N)”,如果按“Y”,就回答“我很高兴”,否则就回答“太糟了”。
流程图(略)编写程序 PROGRAM ex1;VAR a:char;BEGIN Writeln(‘Are you happy?’);Write(‘a=’);Readln(a);IF a=‘y’
THEN writeln(‘I am happy’)ELSE writeln(‘too bad’)END.上机任务
输入三个正数,输出最大数
(1)分析题目,设问,引导学生思考:
在现实中,如果要求三个正数中的最大数,我们很容易做到;但是,如果有一千个数或更多的数,就需要较长的时间,而且容易出错。如果用Pascal按一定的算法编写程序,就可以准确地在短时间内求出一千个数或更多数中的最大数,那我们应该如何编写程序呢?
(2)分析算法:
归纳算法:两数分别做比较,用中间量保存当前最大数,最后求出最大数。
①max←0 ②输入a、b、c的值
③如果max
Writeln(‘The max is’ ,max)END.程序运行:
当程序运行后(Ctrl F9),先在屏幕上出现一行提示语句:“Please input a b c”,光标在下一行行首闪烁,等待用户从键盘输入数据,输入任意三个数后按回车,最后显示结果。如果输入其他的任意三个数,也不需要修改程序了,直接在光标显示输入新的数就可以得出结果。
随机请部分同学到教师机上演示他们的程序,并请他们谈谈自已编(改)写程序的体会。小结:
1、IF 语句
If„„then„„(else„„)
2、编写程序的方法。
①分析题目,想出解题的思路和方法(算法); ②把分析的处理步骤用流程图表示出来; ③用Pascal的语言编写出程序。
知识拓展 突破难点(1)编写程序步骤:
①分析题目,想出解题的思路和方法(算法);
②把分析的处理步骤用流程图表示出来;
③用Pascal的语言编写出程序。(2)说明:
①Pascal语言对分行没有严格的要求,可以将多句语句写在一行中,也可以将一句语句分行书写。
②在Pascal语言中,在大小写字符在命令中等价,但习惯中保留字用大写,其他的用小写。