收藏 分享(赏)

浙教版高一冒泡排序教学设计.doc

上传人:weiwoduzun 文档编号:2671631 上传时间:2018-09-24 格式:DOC 页数:8 大小:108KB
下载 相关 举报
浙教版高一冒泡排序教学设计.doc_第1页
第1页 / 共8页
浙教版高一冒泡排序教学设计.doc_第2页
第2页 / 共8页
浙教版高一冒泡排序教学设计.doc_第3页
第3页 / 共8页
浙教版高一冒泡排序教学设计.doc_第4页
第4页 / 共8页
浙教版高一冒泡排序教学设计.doc_第5页
第5页 / 共8页
点击查看更多>>
资源描述

1、1浙教版高一冒泡排序教学设计浙江省象山中学 章婷红 315700 一、设计思想算法与程序设计具有高度的抽象性和严密的逻辑性,教师难教、学生难学成为一个突出的现象。如何消除学生畏惧心理,充分调动学生的积极性,正是我设计该课的主要目标。程序设计的基本方法是自顶向下地逐步求精和模块化。自顶向下地逐步求精是指首先要对所设计的系统有一个全面的理解,其次从顶层开始连续地逐层向下分解,直到系统的所有模块都被分解为一条条的详细指令时为止。模块化是指把一个大的程序按照一定的原则划分为若干个相对独立但又相关的小程序(模块)的方法。依据这个基本方法,在教师的引导下,从简单到复杂,从粗到精,各个难点分解,最后师生共同

2、完成总流程图的设计。在整个过程中,教师要积极引发学生的思考,让他们真正参与进来。二、教材分析本节内容选自浙江教育出版社算法与程序设计第二章第三节和第五章第三节。以第二章内容为主,下节课让学生进行第五章编写程序及上机实践。课程标准指出算法与程序设计模块教学主要目的是“使学生进一步体验算法思想,了解算法和程序设计在解决问题过程中的地位和作用;能从简单问题出发,设计解决问题的算法,并能初步使用一种程序设计语言编制程序实现算法解决问题。”冒泡排序的算法及程序实现就很好地较全面地体现了这点。排序算法是使用频率最高的算法之一,而冒泡排序是其中一种很典型而且相对简单的方法。它的学习同时为后面的选择排序做了铺

3、垫。通过冒泡实例的学习,可以提高学生的程序设计能力,为今后在算法与程序设计方面的进一步研究和学习打下基础。三、学情分析我是先上第一、三、四章,再上第二和第五章。通过前面三章的学习,同学们已经了解了算法设计的基本知识,学会了利用自然语言和流程图描述解决问题的算法,对排序中碰到的循环结构的流程图和循环语句以及数组变量的使用方法都已有基础。但由于实践比较少,对以前知识的遗忘率比较高,画流程图还不太熟练,程序设计思想比较弱。因此由浅入深,逐步引导比较适合学生的口味。四、教学目标知识目标:掌握冒泡排序的原理;理解冒泡排序的流程图;编写冒泡排序的主要代码;能力目标:学会使用冒泡排序思想设计解决简单排序问题

4、的算法;进一步理解程序设计的基本方法,体会程序设计在现实中的作用;情感目标:培养学生分析问题、发现规律的能力,激发学生学习热情;培养良好的程序书写习惯;五、重点难点 重点:理解冒泡排序原理及它的流程图2难点:理解冒泡排序中的遍、次等概念(即对变量使用的理解)六、教学策略与手段采用讲解法、演示法、讨论合作、分析归纳法引导学生参与思考,用逐步求精的方式降低学生的理解难度,化抽象为具体,由特殊到一般,有效地突出重点突破难点。七、课前准备1教师的教学准备:冒泡排序的课件2教学环境的设计与布置:多媒体网络教室、投影机、多媒体教学平台、flash 软件八、教学过程一、导入:创新情景我们经常会碰到要排队的情

5、况,比如排座位,做操、排大合唱队伍等。今天我想请四位同学上来表演一下排队。我报了四位学生的名字,让他们上来,并让他们按报到的次序排起来。问:他们现在是按什么排的?学号(我有意按学号报的)。好,现在请你们按身高从矮到高排起来。不一会四位学生就排好了。【设计意图】一开始让四位学生上来,其他学生觉得挺有意思的,所以注意力一下都集中过来。我指着其中一位换到前面去的学生,问大家他是怎么知道自己矮的。这时下面有学生在喊,他本来就是矮的,还有学生说一看就知道了。我又请这位学生谈谈他当时的想法。一般学生会提到与别人比一下,矮的话就换上去了(如果说不出来,教师可以适当引导一下)。师:对,肯定要比一下才知道,而且

6、需要交换。有些学生说一看就知道,其实也是看了以后经过大脑思维飞快比较得出的结论。排队其实是一种排序:通过调整位置,把杂乱无章的数据变为有序的数据。如 Excel 中的排序功能,通过本节课的学习我们自己也可以设计出类似的小软件。二、新课排序的方法很多,这节课我们来学习其中一种比较典型的排序方法冒泡排序。1、 冒泡排序的基本思想教师可以先让学生根据字面意思想像一下“冒泡”是一个怎么样的情景气泡一个一个从下往上不断地冒上来。然后一边讲解一边以文字形式给出冒泡排序的基本思想(书 P31略)。特别要强调怎样算一遍处理,而且每遍总是从“最下面起”,“自下而上”,比较“相邻”两数。我请刚才那四位学生仍先按学

7、号排回来,然后演示利用冒泡排序法进行从矮到高排序的过程。学生在进行表演时,教师可以充当解说员,关键的地方进行提示,如每遍的开始和结束,同时引导学生认识到第几遍处理完找到的应该是第几矮的同学(或第几小的数)。【设计意图】学生的表演比单独拿出几个数来比较往往更能吸引学生的注意力,学生们在轻松活跃的气氛中明确了冒泡排序的基本方法。演示完毕,教师提出一个问题:4 位学生共进行了几遍查找?为什么?3然后再用一个 flash 动画演示规模为 4 的数组变量 d 的数据按非减次序进行冒泡排序的逐个过程,再次强化学生对冒泡排序过程的理解。也为下面每一遍中两两交换情况的分析做了铺垫。2、画流程图(按非减次序排序

8、)这块内容是本节课的重点,采用自顶向下逐步求精的方式,由特殊到一般归纳总结,利用模块化,各个难点一一突破。以具体的情况 4 个数为例,由最简单的流程图一左侧的图开始,让学生将冒泡排序过程用形象的语言表示出来:不断冒起一个泡(最小数),于是转化成右侧流程图。流程图一(4 个数)思考:以 4 个数为例,这里的“不断”有没有限定,到底是几遍呢?为什么?流程图二(4 个数)给出流程图二左边的图之后,教师可以让学生思考一下,这种结构实际上属于什么结构循环结构。但是左图是不规范的,我们需要用一个变量来控制循环次数,从而引出用变量 i 来记录正在执行的排序的遍数,它的值应该是从 1 到 3,每次做完后加 1

9、。让学生回顾一下循环结构的流程图模式,两两学生讨论,合作将上面流程图二左侧的图转换成右侧规范的流程图。思考:如果参与排序的是 n 个数呢?比较遍数与个数关系:遍数个数1【设计意图】遍数与个数关系算是其中一个难点,但无论是通过学生上台表演以及 4 个数的flash 动画演示,还是学生已有的认知规律,他们还是可以比较容易得出这个结论的。所以将上面流程图中的“i=3”改成“i=n-1”即可得到下面左侧这个流程图。i:记录正在执行的排序的遍数4为了分解后面一个难点,教师让学生用简单的语言描述每次“冒起一个最小数”是怎么冒出来的:不断两两比较交换,这也是冒泡排序也叫“比较交换”法的原因。于是下面左侧流程

10、图又可转化成右侧的形式。流程图二(n 个数)现在只剩下“不断两两比较交换”还需要进一步细化。如何进行不断两两比较交换?以4 个数为例,可以回看刚才的 flash 动画。在程序中有些数据规律不是很明显,如果用表格来列一下,可以极大地提高数据分析的有效性和准确性,规律也更容易找出来。第几遍 依次与它的前一个数进行比较的第一个数依次与它的前一个数进行比较的最后一个数共比较次数第 1 遍 d(4) d(2) 3第 2 遍 d(4) d(3) 2第 3 遍 d(4) d(4) 1引导学生发现规律:每次都是从最后面一个数开始比较,最后一个参与比较的数的下标与比较的遍数有关:遍数1思考:共 n 个数呢?让学

11、生讨论共 n 个数,各遍比较的情况,特别是第 i 遍,完成下表的填写:第几遍 依次与它的前一个数进行比较的第一个数依次与它的前一个数进行比较的最后一个数共比较次数第 1 遍 d(n) d(2) (n-2)+1=n-1第 2 遍 d(n) d(3) (n-3)+1=n-2 第 i 遍 d(n) d(i+1) (n-(i+1))+1=n-i 第 n-1遍 d(n) d(n) (n-n)+1=15这里又需要用一个变量来标识正在参加比较的数组元素的下标,引进变量 j:记录一遍处理过程中,当前数组元素下标。小结论:共 n 个数,第 i 遍处理时,j 的值从 n 到 i+1 之间递减,每次 d(j)与它的

12、前一个数d(j-1)进行比较。【设计意图】本节课最大的难点就是变量 j 的取值范围,尤其是它的终值为什么是 i+1 学生往往更是难以理解,因为它是在动态变化的。而由特殊的 4 位数开始找出规律,然后归纳推广到一般的 n 个数就相对比较简单。我花了比较长的时间让学生自己探讨,目的是经过充分思考得出的结论才会记忆深刻。为了加深他们的理解,我又用下表更直观地来说明这个问题。我一边讲解,一边手绘了如下的表格,说明当要进行第 i 遍处理时,即要找第 i 个最小数时,此时前面 i-1 个最小数已经找到(阴影部分),这部分不需要再参与以后的两两比较,所以第 i 遍处理时,第一次两两比较应该是 d(n)与它的

13、前一个数 d(n-1),以此类推,最后要比的是 d(i+1)与它的前一个数 d(i),至此此轮最小数就冒到第 i 个位置了。所以最后一个的“它”的位置应该是 i+1。位置 数组变量 d12i-1ii+1n“如果下面一个数比上面一个数小,就交换”。如果就否则,其实是一种分支结构。教师可以用生活中的实例说明(如果天气好的话就去打球;如果 60 分以上就显示合格,否则就显示不合格),并简单回顾一下分支结构的流程示意图。【设计意图】程序实例生活化学生更容易接受。流程图三(n 个数) 不断两两比较交换最后一次两两比较第一次两两比较6至此,所有问题、难点我们都全部细化,一一解决了,现在将流程图三“两两比较

14、交换”纳入流程图二,即得下面的总流程图:总流程图当刚显示这个总流程图时,学生还往往不太相信自己的眼睛。师:不要惊讶,这的确是我们通过自己的努力一起画出来的。看来设计算法画出流程图也并不是什么天大的难事,只要我们有信心,由浅入深还是可以解决的。当然别忘了说明一下这个总流程图各部分的作用,并留 1 分钟让学生自己消化一下。3、学生体验冒泡排序“算法执行过程”提供本书配套辅助软件“运行体验”文件夹中的“冒泡排序.swf” ,让学生采用“单步执行”模式。4、流程图程序语言可以通过对两个变量和两数互换语句的解决,最终得到主要参考代码。(1)i:记录正在执行的排序的遍数,由 1 变到 n-1我们学过的循环

15、语句不外乎 fornext 和 DoLoop 两种,这里已知循环次数的情况下,用 fornext 比较简单。for i=1 to n-1冒起一个最小数(循环体)next i(2)j:记录一遍处理过程中,当前数组元素下标,由 n 变到 i+1for j=n to i+1 step 1d(j)与它的前一个数 d(j-1)进行比较说明:虚线框部分即为第i 遍处理时“不断两两比较交换”的流程图n:参加排序的数组元素总个数i:记录正在执行的排序的遍数,由 1 变到 n-1j:记录一遍处理过程中,当前数组元素下标,由 n 变到 i+17next j(3)d(j)与 d(j-1)互换k=d(j):d(j)=

16、d(j-1):d(j-1)=k教师可以利用酱油和米醋互换来做比喻,引导学生实现两数互换的方法。对照总流程图,自上往下,写出主要参考代码:for i=1 to n-1 i 记录正在执行的排序的遍数,由 1 变到 n-1for j=n to i+1 step -1 j 记录一遍处理过程中,当前数组元素下标,由 n 变到 i+1if d(j)d(j-1) then 如果 d(j)比 d(j-1)小k=d(j):d(j)=d(j-1):d(j-1)=k d(j)与 d(j-1)互换endifnext jnext i【设计意图】因为已学过 VB 基本知识,对赋值、选择和循环这三种语句都有基础,所以流程图

17、画出来以后,转换成程序语言并不太难。趁热打铁,顺理成章之间完成了主要代码的编写,为下节课学生上机实践打下基础。显示参考代码后,教师要引导学生养成良好的习惯,用规范的代码书写格式有利用于程序的调试,还增加了可读性。5、拓展:优化冒泡排序到网上搜索冒泡排序的改进方案。【设计意图】为寻找解决问题的最佳方案而产生更好的学习目标。尤其是一些理科比较好对程序设计比较感兴趣的学生,离开机房的时候还一路在讨论着。九、知识结构或板书设计用课件显示:1、各个流程图(见上面);2、主要参考代码(见上面)十、作业设计设计一个评分系统的流程图:有 n 个评委,最后得分为去掉一个最高分与一个最低分后的平均分。【问题研讨】

18、1、如何用人的思维模拟计算机的工作过程我让学生上来排队演示,本想让他们能用不同方法,以便能引到各种排序方式。但后来发现这太难了。因为人是有眼睛和原有认知能力的,有些事想当然就可以解决。但计算机与人不同,它看不见、摸不着这些数据,所以不可能像人一样来完成任务。其实计算机解决问题的关键,就是要把人解决问题的每一步思维过程描述出来。这也是所有学程序的人尤其是初学者最难的地方。然而程序设计思想并不是一下子就能培养的,我们高中阶段只能是慢慢引导学生学着去分析问题,将问题解决方法步骤化。所以课后我在想,是否可以在上这块内容之前给学生布置一个任务:闭上眼睛,将十根乱排的长短不一但相差不大的的小木棍从短到长排

19、起来,要求每次比较最多只能两根。事后我也请一些人做过实验,发现每个人都有自8己不同的想法,但各自的原理都可以从程序中的各种排序法中找出原型。2、细节也不容忽视为了说明冒泡排序的基本方法,我上课时在各班都请了四位学生上台根据身高排队来演示冒泡排序的过程。方便原则,我按学号点了四位学生,然而其中有一个班上来的四位中有个男生,他个子挺矮的,比一般女生都要矮,轮到他进行两两比较时,当他被换到前面,下面部分学生发出了一些笑声,他好像蛮不开心的,头都低下去了。后来我在想,学生尤其是男生对自己的身高其实是很在意的,我这样让他上来,是不是会很伤他的自尊心?看来再小的细节也不容忽视啊。【参考资料】浙江省普通高中新课程实验学科教学指导意见,浙江省基础教育课程改革工作领导小组办公室编普通高中信息技术新课程标准,人民教育出版社

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 中等教育 > 小学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报