查成林 《用穷举法解决问题》 教学设计 下载本文

《用穷举法解决问题》教学设计

教师:查成林

一、 教学内容分析

本节课内容选自教科版《算法与程序设计》第三章第2节第1小节,主要 让学生了解穷举算法的特点,掌握用穷举法设计算法的基本要求,学会设计穷举算法解决问题,并用流程图或伪代码描述穷举算法,选择在教室进行教学。

二、 学情分析

在前面的教学中,学生已经学习了算法的特点,理解了顺序、选择、循环三种基本结构,并通过上机实践,对算法与程序设计有了初步的认识。

学生对《算法与程序设计》的兴趣和认识不一,有的将它作为数学辅助,有的视为异常枯燥之物,也不乏对其“倾心”者……因而,由于层次不一样,在学习时,可能会遇到以下问题:

①、学生理解不透彻,考虑不周到,以致无法得出正确的结果 ②、学生一味模仿例题为主,思维局限,知识无法迁移 ③、学生为学习算法而学算法,不联系生活实际

三、 教学目标 知识与技能:

了解穷举算法的关键,掌握穷举法解题的基本思路,学会使用流程图或伪代

码描述穷举算法,能认识到穷举算法的适用范围及其局限性。

过程与方法:

通过“水仙花数”、“百鸡百钱”等问题,归纳总结穷举法的基本特点及其解

决问题的基本思路,通过设计穷举算法模拟密码破解,尝试全面认识穷举算法,理解其适用范围及局限性。

情感态度与价值观:

通过解决具体问题,体验穷举法在生活中的广泛应用和重要价值,认同

穷举算法解决问题的局限性,培养学生严密的逻辑思维能力、自主探究能力。

1

四、 教学重难点:

教学重点:穷举算法的基本特点;设计穷举算法解决问题 教学难点:联系实际问题设计并规范描述穷举算法; 四、教学方法与策略

问题引入,体验归纳,联系实际,启发探究 五、教学过程设计: (一)情境引入(2分钟):

教师:一些同学提前几分钟赶到机房门口,门没有开,我给某位同学一串

钥匙,让他开门,钥匙有很多把,如果是你,你会怎么开门呢?

学生:回答如何开门,可能会说一把一把尝试等 教师:生活中类似的例子还有很多,请列举一二 (二)构建新知: 例题回顾(3分钟):

教师:在构建多重循环时,我们举过一个例子“水仙花数”,请同学

帮我们回顾一下我们是如何找出所有的水仙花数的。

学生:回想并回答

教师:引导学生分析解决水仙花数的过程,水仙花数的范围,我们列

举的规则,并给出流程图

学生:在教师的引导下分析解决水仙花数的过程,水仙花数的范围,

列举的规则,并复习流程图

新例分析(10分钟):

教师:提出百鸡百钱问题 学生:思考并设计算法

教师:引导学生分析穷举范围,穷举方法,提供不完整流程图,请学生

完成设计

学生:补充完整流程图

2

教师:请学生写出代码或直接给出程序演示,请学生小结穷举法解决问

题的一般过程及实现方法

师生共同总结:

如果确定用穷举算法来解决问题,一般来说选择的控制结构是

(循环结构),循环变量的范围选择要依照(不重复)、(不遗漏)的原则,根据循环变量列出可能的解,再根据条件对可能的解进行筛选,最后将符合条件的值输出。

(三)问题解决(22分钟):

教师:提出破解三位纯数字密码问题 学生:思考通过穷举法暴力破解密码

教师:引导学生根据穷举法的基本特点,设计破解算法,并画出流程图

或写出伪代码

学生:设计算法,并画出流程图或写出伪代码

教师:请学生写出代码或直接给出程序演示,提请学生注意破解时间,

演示结束,将问题难度加大,破解6位纯数字密码

学生:尝试更改算法

教师:演示破解6位纯数字密码的程序,并请学生注意破解时间,再次

加大难度,破解带小写字符和数字的6位数密码

学生:尝试再次更改算法,并思考如何解决时间问题

教师:引导学生认识穷举算法的适用范围及其局限性,并思考如何改进

算法提高其效率(适当提示,如“猜数字游戏”的实现等)

学生:总结穷举算法的适用范围及其局限性

(四)总结与延伸:(3分钟)

教师总结课堂,并布置作业及思考题:

1、编写程序演示密码破解

2、思考:如何提高穷举算法的效率及适用范围?

3