- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PAGE 2
课程基本信息
课例编号
学科
信息技术
年级
高一
学期
秋季
课题
枚举算法
教科书
书名: 信息技术必修1 《数据与计算》
人民教育出版社;中国地图出版社 出版日期:2019 年 6 月
教学人员
姓名
单位
授课教师
指导教师
教学目标
教学目标:
理解枚举算法的基本思想;
认识问题解决过程中枚举算法的效率,通过不同解题方法的比较,体验算法的优化,合理选择算法;
体验程序设计的基本过程,通过对问题进行分析,根据实际问题的需要选用不同的算法,编写程序并进行调试和完善,形成用计算机解决问题的具体方案。
教学重点:
理解枚举算法的基本思想;
通过不同解题方法的比较,体验算法的优化并合理选择算法。
教学难点:
根据现实问题的需要,灵活运用枚举算法解决实际问题。
教学过程
时间
教学环节
主要师生活动
3
复习旧知
引入主题
在前面的学习中,我们学习了三种程序结构,了解了解析算法的思想:通过找出解决问题的前提条件与结果之间关系的表达式,并计算表达式的值来实现问题的求解。
解析法求解“鸡兔同笼”问题:今有雉兔同笼,上有三十五头,下有九十四足,问雉兔各几何?
除了解析法,有没有其他的方法解决鸡兔同笼问题呢?
回忆我们在循环结构中学过的密码破解的实例,能不能像破解密码一样,通过一个一个地去尝试,找到满足条件的鸡和兔的数量呢?
8
新知学习
算法思想
枚举算法的思想
例1.枚举法解“鸡兔同笼”问题
分析问题
= 1 \* GB3 ① 本问题的已知条件是什么?求解目标是什么?隐含什么样的关系?
x + y = 35
2x + 4y = 94
列举出所有可能,逐一尝试验证,输出其中满足题目条件的鸡兔数量,这就是枚举算法的思想。
= 2 \* GB3 ② 用枚举算法实现解“鸡兔同笼”问题,如何进行问题拆解?
一一列举可能的解,即枚举范围是多少?
逐一检验可能的解,判断条件是什么?
设计算法:输入数据、处理数据、输出结果
逐一列举,用循环结构就可以解决。一一校验,则需要用到分支结构,验证哪些情况满足问题的条件,如果满足就输出。
编程调试
算法的优化:分析两种代码的循环执行次数,在解决实际问题的过程中,由于枚举算法需要将所有可能情况一一列举,当数据范围比较大时,要尽可能将枚举范围降至最小,提高解决问题的效率。
试一试:用自己的话说一说,枚举算法的思想是什么?
一一列举,逐一检验
即:列举出所有可能的情况并逐一进行检验,根据检验的结果执行相应操作。
枚举算法要注意的问题:
12
实践活动
实践活动1:小明的幸运年
有人问小明的年龄,小明说:今年是我的幸运年。我出生年份的四位数字加起来刚好是我的年龄(周岁)。已知今年是2020年,请推断出小明的出生年份(4位整数)。
解法一:
分析问题
= 1 \* GB3 ① 本问题需要存储哪些数据,各是什么类型?
= 2 \* GB3 ② 用枚举算法实现解“小明的幸运年”问题,如何进行问题拆解?
一一列举可能的解,即枚举范围是多少?
逐一检验可能的解,判断条件是什么?
如何根据输入年份,得到四位数字之和?
以“1949”为例,讲解数字拆分的过程:
设计算法:输入数据、处理数据、输出结果
编程调试
将一段逻辑相对独立、功能相对单一的代码封装成一个函数,可以提高代码的可读性和可重用性。
可以直接调用定义的resolve函数,一一列举,逐一检验:
解法二:
将输入年份先强制转换为字符串,通过for循环结构将每个字符取出,转换为整型数据,再进行累加,也能完成该功能。
在编写程序解决问题的过程中,要注意灵活使用Python的各种运算符解决问题。
实践活动2:水仙花数
“水仙花数”是指一个三位自然数,其各位数字的立方和等于该数本身。
例如153是“水仙花数”,因为:153 = 13 + 53 + 33。
解法一:
分析问题
= 1 \* GB3 ① 本问题需要存储哪些数据,各是什么类型?
= 2 \* GB3 ② 用枚举算法实现解“水仙花数”问题,如何进行问题拆解?
一一列举可能的解,即枚举范围是多少?
逐一检验可能的解,判断条件是什么?
如何分离各位数字,并得到三位数字的立方之和?
设计算法:输入数据、处理数据、输出结果
编程调试
解法二:
通过分别枚举三位自然数的百位、十位和个位数字,计算生成一个三位自然数,再去判断它是否是水仙花数。
一一列举可能的解,即枚举范围是多少?
逐一检验可能的解,判断条件是什么?
通过这两个实践活动,我们发现,同一个问题,可以从不同的角度思考,实现问题求解。在算法的学习中,大家要多思考,多和身边的同学们讨论,碰撞出更多思维上的火花。
枚举算法的应用:
想一想:以下问题可以用枚
您可能关注的文档
- 初二【英语(人教版)】Unit 6 I’m Going to Study Computer Science.Period 3 New Year’s Resolutions 课后练习.docx
- 初二【英语(人教版)】Unit 6 I’m Going to Study Computer Science.Period 3 New Year’s Resolutions 任务单.docx
- 初二【英语(师大版)】U4 Lesson 11 Health Advice 1 教学设计.docx
- 初二【英语(师大版)】U4 Lesson 11 Health Advice 1 学习任务单.docx
- 初二【英语(外研版)】M7 Unit 3 Language in use 教学设计.docx
- 初二【英语(外研版)】M7 Unit 3 Language in use 课后练习.docx
- 初二【英语(外研版)】M7 Unit 3 Language in use 学习任务单.docx
- 初二【语文(统编)】散文二篇 教学设计.docx
- 初二【语文(统编)】散文二篇 练习题.docx
- 初二【语文(统编)】散文二篇 任务单.docx
文档评论(0)