浙教版(2023)六年级上册信息科技 第10课 “韩信点兵”枚举法的实现 教案(表格式)+学习单

资源下载
  1. 二一教育资源

浙教版(2023)六年级上册信息科技 第10课 “韩信点兵”枚举法的实现 教案(表格式)+学习单

资源简介

课题 “韩信点兵”枚举法的实现 课时 1课时
学习目标 1.通过“小小军事家清点战车数量”游戏,进一步学习枚举法的思想。 2.通过小组合作使用枚举法解决“韩信点兵”问题,掌握枚举法解决问题的一般 过 程 。 3.通过完善半成品程序,掌握枚举法的程序实现,提升解决问题的能力。
学习重点 掌握枚举算法解决问题的一般过程 学习难点 掌握枚举算法的程序实现
学习准备 PPT、任务记录单、“韩信点兵”动画视频、半成品程序。
学习过程
学习版块 学生活动 教师活动 设计意图 改进设计
回顾:清点战车,唤醒旧知 1.观看课件,认识古代多种不同作战功能的战车样式,如二轮战车、四轮战车等。阅读题目:已知有二轮和四轮战车共36辆,车轮102只,求两种战车各有几辆。完成任务:清点两种战车的数量。 2. 在Excel 空白文件中尝试求出二轮战车和四轮战车的数量。挑选2名学生反馈计算方法及结果。 1.播放课件,引导学生观察战车的车轮数,和学生一起阅读题目,抽象并建模。 2.巡视指导计算过程,收集典型的计算方式。反馈并归纳枚举法的思想:有序地尝试每一种可能的解,如果满足条件就采纳,否则继续,直到条件不满足。枚举法的两个关键是枚举范围和正确解的判断条件。 在第一单元解决“鸡兔同笼”问题的过程中,学生已经学习了枚举法。战车的轮数与鸡、兔的脚数为同一性质的问题,且 “清点战车”的命名向“点兵”靠近,以此回顾枚举法的建模,开展以“古代小军师”为主线的一系列活动,环节之间有较强的连贯性。
探索:跟着韩信去点兵,提出问题 1.观看“韩信点兵”视频,思考:“韩信点兵”问题中,已知什 么 求什么 2.小组讨论:可以用哪些方法来统计士兵人数 1.播放视频,指出思考方向。 2.按计算机排座的方法组织小组,引导小组内讨论问题。请3 组的代表说一说。 引导小组讨论可用哪些算法来点兵,用驱动性问题来展开持续性学习。六年级的学生会用已学的数学知识去计算,在计算 过程中不断发散思维,为后续学习使用多种算法做铺垫。
建构:沙场点兵,解决问题 活动一 明确要素,抽象建模 1.阅读文字,用自然语言描述问题,抓住关键要素。 2.小组合作,组内成员按x 值均分计算量,完成表2所示的任务记录单。 活动二 出谋划策,算法设计 1.参考教材的枚举法流程图,带着问题在图2的任务记录单中 完成“韩信点兵”的流程图。 (1)流程图中的两个“关键”如何填写 (2)是否需要在流程图中添加变量x的初始值 若需要,在哪 个位置添加 2.学习“%”和 “and” 的运用。在任务记录单中写出 “x 除以3 余2”“x除以3余2且x 除以5余3且x 除以7余2”的Python表达式。 活动三 应势而生,程序实现 1.完成任务记录单:将流程图逐框转换成Python 代码。 2.在计算机中打开以下程序,先完善,再运行,实现算法。 x=1000 while : If 1.讲解、列数量关系。引导学生逐句阅读问题,找出范围和条件关系式,提炼计算模型。 巡视指导学生填写表格。小结:枚举法的关键是确定枚举的范围和正确解的判断条件。 1.巡视任务记录单的完成情况,并对有问题的学生进行直接指 导,如枚举范围和判断条件填写的顺序关系方面。如该如何填写以 同时满足多个条件 2.运行Python,示范运算符“%”和逻辑运算符“and” 的运用。教师巡视并指导学生书写表达式,纠正问题,如“==”“and” 前后有空格等。 1.巡视学生对流程图进行逐句翻译的情况。留意一些特别的问题“while”“if” “print”等词是否拼写正确。 2.巡视指导学生的代码,收集语句格式等问题。提醒学生程序 编写的格式是有层次性的,循环体内容需缩进。集中反馈问题,如 “while”和“if”后面的“:”等。 抽象过程中,教师引导过程可表示为数的除法运算,被除数、商可用“□”等图形符号表示,以便建立模型。抽象之后,让学生填写表格,填写1000~1100各数计算余数的过程,让学生再次感受枚举法的思想,感知枚举法的关键为确定枚举的范围和正 确解的判断条件。 本课中将流程图和“韩信点兵”问题相融合,符合学生的学习规律,为本课算法设计的学习做铺垫。设计活动:在Python中运行代码,理解表达式x%y的功能是“用x 除以y, 取 余数”;多个条件同时被满足,需要用“and”逻辑运算符,加深对条 件判断的理解。降低了从流程图到Python程序实现的难度。 对于学生编程实现算法,教材虽然不做硬性要求,但是学生需要体验算法和程序之间的关系。教师提供半成品程序,降低学生编程的难度。因为每个学生的接受能力不同,对最后没能成功填写语句的学生,教师可提供对应的程序让他们进行验证。
应 用:沙场练兵,巩固所学 1.体验问题解决:我带领1500名士兵打仗。战后,死伤一二百 人。剩下的士兵中,士兵3人一排,结果多出1名;士兵5人一排, 结果多出4名;士兵7人一排,结果又多出3名。问:剩下的士兵一 共有多少人 先想一想下方的2个问题,将想法填写在教材上。 (1)本题的变量x 的取值范围是多少 (2)需要同时满足的三个条件可以怎么表示 3人一排多1人,可以表示为( ) 5人一排多4人,可以表示为( ) 7人一排多3人,可以表示为( ) 2.编写程序并验证。 1.引导学生留意x 的取值范围和正确解的判断条件,并记录在 教材中。 2.根据学生的能力,有意引导学生直接编写程序或修改程序。 指引编程有困难的学生参考教材上“韩信点兵”的程序进行修改 验证。 在练习中,通过“想一想”以及后续的编写验证,让学生再次感知枚举法的关键所在——确定枚举范围和正确解的判断条 件。“编写验证”环节,让学生根据自身情况选择合适的方法,照顾 到了每名学生的实际情况。
小 结: 整理所学 交流:这节课学习了哪些内容 组织学生交流,同时引导学生归纳枚举法的算法关键和相应的 编程框架。 让学生总结本课所学内容,教师不仅可以了解学生对枚举法的掌握程度,还可以了解学生体验用算法解决实际问题过程的收获与想法,以便进行下一次的教学优化。
作业指导
板书 “韩信点兵”枚举法的实现 确定枚举的范围 确定正确解的判断条件第10课 “韩信点兵”枚举法的实现
任务记录单
活动二 明确要素,抽象建模
小组合作,组内成员按x 值均分计算量,完成表2所示的任务 记录单。
X 除以3 除以5 除以7 是否符合 条件
△ 余 O 余 ◇ 余
1000 333 1 200 0 147 6 否
1001
1002
……
1073
……
1100 366 2 220 0 157 1 否
活动二 出谋划策,算法设计
1.参考教材的枚举法流程图,带着问题在图2的任务记录单中 完成“韩信点兵”的流程图。
(1)流程图中的两个“关键”如何填写
(2)是否需要在流程图中添加变量的x的初始值?x若需要,在哪个位置添加?
活动三 应势而生,程序实现
将流程图逐框转换成Python 代码。在计算机中打开以下程序,先完善,再运行,实现算法。
填空:枚举x在
范围内的每一个值,判断条件
”是否同时满足,满足条件的x就是要求的解。
开始



输出该枚举值
取下一个枚举值
结束
图2“韩信点兵”流程图

展开更多......

收起↑

资源列表