第一章 程度设计初步
详细内容
./
://.mm123./mm_bbs.htm第八节 冒泡排序法
一、教学目标知识目标:1、了解冒泡法排序的基本概念2、理解算法过程模拟技能目标:1、根据模拟结果画出流程图2、能熟练地设计单循环流程图3、会设计实际例子地双循环流程图情感目标:培养学生养成使用流程图分析和解决实际问题的习惯二、重点难点教学重点:冒泡法排序、算法模拟、双循环流程图的设计教学难点:模拟中循环次数地确定、双循环流程图的设计三、环境与素材1、多媒体网络教室,也可以在有多媒体投影机的普通教室上课。2、有关流程图的文件和相关程序,或者可以使用画有流程图的挂图3、模拟算法用地教具,如盒子、小球等四、教学过程建议课时:2课时,如果条件容许加一节总结课。本节是第一章的最后一节内容,学好本节内容后,今后学生继续学习编程的话已基本没有什么障碍了,特别是双重循环的教学是本节的主要难点,所以可以向学生灌输一些程序结构化的知识,特别要提示循环中的嵌套问题。通过算法的模拟过程,使学生懂得计算机其实并不聪明,它的运行完全是按照人们事先编排好的程序来运作,最大的特点高效,不会疲倦。同时让学生知道,编好程序是提高计算机效能的重要途径。对本节的教学提如下的建议:1、冒泡法排序的教学和上一节的查找法一样,让学生知道其实关于排序,科学家也发明了许多的方法,今天要学的冒泡法也是在许多方法中比较简单易懂的方法,所以使用也比较普遍,至于其他的方法有兴趣的学生可以课后去翻阅有关资料。对于排序的基本思想,教师可以通过黑板或大屏幕来简单的解释一下,或者可以让全体学生阅读教科书,告诉学生要理解其中的内容,必须听好下面的课。 2、模型的建立及模拟过程的教学 这部分内容教科书上已经写得比较清晰,教师只要按部就班得做下去就可以了,但几个地方需要特别说明。 1.关于模型的建立教学,可以用课件、实物或者直接用黑板,这里建议用黑板,因为整个过程可以调控可以多样化,比如学生的参与,当然实物也能做到,但黑板的有点就是能够留下痕迹,有利于思路的再现。 2.第一个阶段的模拟是至关重要的,也是本节教学重要部分,教师一定要主意学生的掌握程度,否则下面的教学就会无法进行下去。第一个阶段模拟过程程序清单REM 第一个阶段模拟DIM A(5):A(1)=7:A(2)=15:A(3)=8:A(4)=10:A(5)=23FOR J=1 TO 4 IF A(J)>A(J+1) THEN ELSEA(0)=A(J):A(J)=A(J+1):A(J+1)=A(0) END IFNEXT JPRINT A(1),A(2),A(3),A(4),A(5)END 3.及时记录各个过程的主要数据,最后归纳填好下表。参加排序的盒子数比较次数阶段结果第一阶段54最少球数的盒子在第五个位置第二阶段43本阶段最少球数的盒子在第四个位置第三阶段32本阶段最少球数的盒子在第三个位置第四阶段21本阶段最少球数的盒子在第二个位置 4.根据表格提供的数据,对整个循环流程图中循环初始值加以特别说明。整个模拟过程BASIC语言程序清单:REM 冒泡法排序DIM A(5):A(1)=7:A(2)=15:A(3)=8:A(4)=10:A(5)=23N=5FOR I=1 TO N-1FOR J=1 TO N-I IF A(J)>A(J+1) THEN ELSEA(0)=A(J):A(J)=A(J+1):A(J+1)=A(0) END IFNEXT JNEXT IPRINT A(1),A(2),A(3),A(4),A(5)END五、练习参考答案: 1、第一题 2、第二题 3、第三题