用穷举法求解问题的实践示例
教学设计
1教学目标
知识与技能:使学生学会使用算术运算符、多重循环等手段实现用“穷举算法”解决问题。
过程与方法:通过“找特别的数”引入课题,利用“谁是罪犯”实例类比说明“穷举算法”的实现过程,通过使用算术运算符
和多重循环的两种方法来实现“水仙花数”“四叶玫瑰数”的查找。
情感态度价值观:通过实践示例,使学生了解“穷举算法”的特点和应用场合,并知道其在解决实际问题方面的意义。
2学情分析
穷举法是计算机解决问题的常用算法思想之一。本课”找水仙花数”是常用算法与程序实现的经典实例,同时也是高中学业水平考试中要求学生掌握的题目。用人工实现穷举法会十分笨拙和繁琐,在列举方案很多的时候更是容易出错,但计算机的高速运算能力保证了穷举法的可行性。本课也涵盖了程序设计的三种基本结构:顺序结构、选择结构、循环结构,故也可以通过本实例,训练学生阅读、编写简单程序的能力。
3重点难点
重点:
利用算术运算符找出数位上的数字;多重循环中数位上的数字所在的循环的层级。
难点:算术运算符Mod的应用;多重循环中数位上数字的变化区间。
4教学过程
活动1【导入】特别的数字
教师提问:同学们,大家在生活中会接触到数字吗,举例说明?
学生回答。
教师总结:可以说,从幼儿园开始学习数字到现在,我们每天都会使用到数字,生活中也离不开数字。在众多的数字当中,有一些数字比较特别,我们一起来看一看:
课件展示特别的数字。
教师引导:同学们熟悉这些数字吗?对于后面三种数字,同学们可以在课余时间利用网络查一查他们的特征。我今天给大家介绍的也是一种特别的数字,它们叫做:(板书)(课件展示课题:水仙花数与四叶玫瑰数)
活动2【讲授】阐述水仙花数、四叶玫瑰数的概念
1、教师课件展示水仙花数的概念及举例。
2、教师引导学生朗读“自幂数”的概念。
活动3【讲授】用穷举法解决问题的基本思路
我们今天的任务是要找到这些自幂数,那么用什么方法可以找它们呢?
(教师课件展示题图文)
同学们可以说一说警察找到嫌疑人的的一般过程。
学生发言。
教师总结:勘察现场,寻找线索——根据证据查实嫌疑人——提起公诉,法院审判。
举例子:消失的“方便面”。昨晚蒲老师来教室上自习时带了一桶方便面,走的时候忘记带走了,今天上早自习到教室的时候,发现那桶方便面不见了。问了班上的同学,都说没看见。同学为了把事情搞清楚,就查看了走廊上的监控,并把拿了方便面的同学截了图。大家为了摆脱嫌疑,打印照片后,进行逐一比对,找到符合影像中特征的同学。
教师展示课件:穷举法的特征及应用场合。
活动4【讲授】用算术运算符的完成查找水仙花数
1、课件展示示例:找水仙花数的分析问题1。
2、课件展示示例:找水仙花数的分析问题2。
3、学生复习VB的算术运算符(P56),教师在黑板上演算水仙花数百位、十位、个位数字的计算方法。
我们假设要比照的数字是“345”,那么各位上的数字是整数还是小数?怎样得到百位上的“3”呢?我们可以联想,“3”所占的数位。由以前所学的知识可知,如果这个数除以它所占的数位,它的商就是百位上的数,但是只能取整数部分,所用需要用到整除。那么个位呢?除以数位,它的商是它本身,故整除不能完成。我们可以用VB的MOD运算符来完成,想一想应该除以呢?以一位数为例,我们先来除以1取余,再除10除余。十位上数要复杂一点,不管用整除还是取余都不能一步完成,需要两步。
教师归纳计算各位数上的数字的方法。
4、课件展示示例:找水仙花数的分析问题3。
5、课件展示:用流程图表述算法过程。
6、课件展示:用代码实现。
活动5【活动】学生讨论完成,四叶玫瑰数的程序
学生讨论,合作完成四叶玫瑰数的程序,教师抽取学生来作答,并将各位数的计算方法板书在黑板上。
活动6【测试】课堂检测
教师课件展示学业水平考试原题,抽取学生在黑板上书上答案。
活动7【讲授】利用多重循环实现水仙花数的查找。
教师利用课件展示代码,要求能学生读懂程序,知道各层循环的意义,及其初始值的变化范围,明白为什么变量“g”需在最内层,“b”在最外层。
活动8【练习】自我巩固
学生自主学习P124问题2,教师抽取学生回答程序段的含义。
活动9【作业】课后作业
教材P125“体验活动”第3题