声明:蓝调百香果跨年热文大赛作品,由作者授权在本号发布。转载请注明来源,公益传播,切勿不署名传播与非法商用(责任自负)。
作品编号:
作品名称:用枚举算法寻找问题多解
作者姓名:张艳芳
作者单位:淄博高青燕园国际学校张艳芳
文件:教案、课件、练习、反思、学情。
下载:“因操作问题,请看留言地址!密码:
说明:以下内容请下载张老师的表格模式更清晰。因为排版不易,请大家尽量提供无格式版式文字。
课题:用枚举算法寻找问题多解(一)
山东淄博高青燕园国际学校张艳芳
教学目标
1.知识与技能
理解枚举算法的基本思想,学会简单枚举问题中枚举对象、枚举范围和枚举条件的确定。
能够识读简单的枚举算法程序。
通过实例探究引导学生分析枚举对象、范围、条件的构造,体验用枚举算法解决问题的思想,寻找解决问题的多种答案组合,逐步培养计算思维。
2.过程与方法
能够正确的分析问题,注重程序的严谨性。
通过实例帮助学生理解并应用枚举算法。
STEM教育理念下多学科融合(语文、数学、技术、工程)。
3.情感态度与价值观
培养热爱祖国为中华之崛起而读书的道德品质。
养成勇于尝试、乐于助人的优秀品质。
教学重点
掌握使用枚举算法的步骤
能够利用枚举算法解决实际问题
教学难点
学会简单枚举问题中枚举对象、枚举范围和枚举条件的确定。
让学生养成从自然语言到程序语言的转换。
教学方法
自主学习,小组合作
教学准备
学案,笔
教学资源
课件,教学设计,学案,第二册课本,有智能一体机的微机教室。
教学过程
创设情境提出问题
教师活动
师:上课!同学们好!
师:怎么了?
师:为什么?
师:你再想想是不是你的生日或者重大节日?
师:这位同学遇到困难了,我们要不要帮帮他,帮助他人是中华民族的优良传统,怎么帮?谁有好的解决办法?你来描述一下你的解决过程?描述的很清楚,我要想在—之间找出符合条件的答案不但很麻烦,还有时会遗漏,计算机做这样的事即迅速又准确,利用它编写一个程序来解决,像这样解决问题的方法在程序中叫什么呢?
师:这就是这节课我们要学习的内容《用枚举算法寻找问题多解》
师:想必大家都知道刚才的方法在程序中叫什么了吧?
师:谁来从词义上解释一下枚举?你能不能用自己的语言描述一下什么是枚举算法?老师这里有个填空题。你能不能填写正确?
师:对学生的回答作出准确评价
师:我学这个算法的目的是什么?
师:你能从定义中找出用来解决问题的三个关键词吗?
师:下面我们具体问题具体分析。
学生活动
学生:老师,我的行李箱打不开了。
学生:密码忘记了。
学生:我只记得它是一个三位自然数,密码个位数是8,其他位含有1,不记得在哪一位置。
学生:思考并回答问题。
学生:一一列举
学生:使用枚举算法解决实际问题。
学生:
1.将问题所有可能的答案一一列举。
2.根据条件判断各个答案是否合适。
3.保留合适的。
设计意图
求助信息有学生提出然后向全体同学求助通过本节课的学习帮助解决,既学习了知识又获得了乐于助人品质。
结合数学学科知道三位数是在-之间
基于STEM理念多学科融合,这里体现了语文学科知识
探究学习
环节包括:自主探究、设计算法、编写程序、调试运行、程序展示、实践验证、学以致用、谈收获。
教师活动:
你问我答:
师:看到第一个关键词列举,请同学们完成学案上的你问我答环节。
师:小范围的讨论后,可以大范围的交流一下,看一下其他同学如何思考的,哪个答案更合理?
师:我让一组同学上台来展示一下
师:通过刚才的分析,要使用枚举算法首先要确定什么?(枚举对象(变量),枚举范围,判定条件)这就是枚举三要素。然后一一列举再逐一检验。
师:经过分析,我们的流程图就出来了,小组讨论把流程图补充完整并能阐述其执行过程,把答案写到学案上。
师:完成了吗?
请一位同学来说一下答案,这里的表达式为什么这样写?你来解释一下。
师:谁来阐述一下程序的执行过程
下面我们进入实战阶段,编写程序,看看哪位同学进过分析问题、设计算法自己独立编写出程序
foriinrange(,0):
ifi%10==8and“1”instr(i//10):
print(i)
编写完成的同学运行一下看看能不能一次成功,不成功的同学先自己找一下原因,如实在找不出原因请教同学,如果同学也不会再请教老师。
找几位同学展示自己的程序,并运行查看结果。
师:公布程序运行结果,现在请一位同学来试着帮忙打开箱子。
屈阳:谢谢同学们的热心帮助。
师:箱子打开了,我很好奇屈阳到底设置了什么密码?这三位数字你想到了什么?希望同学们热爱我们伟大的祖国,勿忘国耻,为中华之崛起而读书。
师:在日常生活中有很多案例会用到枚举算法,我们一起看下面几个案例。
找出下列问题的枚举三要素。
师:枚举算法在数学中也被广泛应用,有一种数,他有一个美丽动听的名字叫水仙花数,什么是水仙花数?那你能编写一个程序从三位自然数中找出所有的水仙花数吗?
请同学们谈谈这节课你都学到了什么?
这节课我们学习了枚举算法,枚举对象、枚举范围和枚举条件的确定是成功使用枚举算法的关键,同时也是这节课的重点。
乔布斯说过每个人都应该会编程,因为他教会你如何思考?希望同学们做一个善于思考的人,爱因斯坦说学习知识要善于思考,思考,再思考,我就是靠这个方法成为科学家的。
学生活动
学生:相邻同学讨论完成学案
学生1:
1.列举谁
2.怎样列举
学生2:
1.条件是什么?
2.如何判断答案是否合适?
3.学生3:
如何保留合适的?
学生:条件表达式不会
学生根据提出的每个问题进行回答并逐步养成从自然语言到程序语言的思维。
确定思路运用流程图描述算法。
完成学案上的流程图。
实战操作
调试程序,成功的不要太兴奋,不成功的要勇于自己找出问题所在你才是真正的理解。
展示自己的作品。
一位同学把运行的结果一一实验找到真正的密码体验枚举算法的高效性,更体会了计算机的高速计算能力。
学生1:
学生回答问题。
学生畅所欲言。
设计意图
让学生理解什么是枚举对象、枚举范围、枚举条件是这节课的重点,怎样确定这些是正确运用枚举算法的关键。也是这节课的难点。
同学分析问题让学生在脑海里有一个大致的思路那么到了编写程序的环节才游刃有余。
自然语言到机器语言的转换这是重点也是难点,正是在这不断的转换中培养学生的抽象思维、统计思维能力第一次运行不成功也不一定是坏事,通过不断的调试改正才能真正的成长。不要一遇到问题就要找老师,一定自己留有独立思考的空间,通过分析问题设计算法到编写程序再到调试运行,每个环节都要正确无误,最后才能帮助同学打开箱子。
通过生活中的几个例子理解枚举算法。
学以致用找了一个枚举算法在数学中的典型案例与数学学科相融合。拓展了学生的知识面。
预览时标签不可点文章已于修改收录于话题#个上一篇下一篇