内容正文:
作业练习
课程基本信息
学科
小学信息科技(浙教版)
年级
六年级
学期
秋季
课题
第10课“韩信点兵”
枚举法的实现
教科书
书名:
信息科技教材
出版社:浙江教育出版社
出版日期:2023年7月
作业练习
作业:
问题描述:假如“韩信点兵”的问题描述修改为:韩信带领1500名士兵去打仗,战后死伤
一二百人。剩下士兵中,他命令士兵3人一排,结果多出1人;5人一排,结果多出4人;7
人一排,结果多出3人。问剩下的士兵一共多少人?请用枚举法设计算法,修改流程图并修
改代码。
1.完善流程图
开始
是
X除以3余且x
除以5余且x除
以7余?
输出x的值
否
Xx+1
结束
2.修改代码
课
x=1000
例程序
while x<1101:
if x%3==2 and x%5==3 and x%7==2:
print("剩余的士兵数为:",x)
×=X+1
作
程序
附答案:
1.流程图
开始
×←1300
X<1401?
否
是
x除以3余1且×
除以5余4且×除
以7余3?
否
输出x的值
X←X+1
结束
2.代码
作
x=1300
while x<1401:
业
1fx%3==1andx%5==4andx%7==3:
程
print("剩余的士兵数为:",x)
X=X+1
序
学习任务单
课程基本信息
学科
小学信息科技(浙教版)
年级
六年级
学期
秋季
课题
第10课 “韩信点兵”枚举法的实现
教科书
书 名:信息科技教材
出版社:浙江教育出版社 出版日期:2023年7月
学习目标
1.通过小组合作使用枚举法解决“韩信点兵”问题,掌握枚举法解决问题的一般过程。
2.通过完善半成品程序,掌握枚举法的程序实现,提升解决问题的能力,提高核心素养。
课前学习任务
1.复习用枚举法解决“鸡兔同笼”问题的过程。
2.在计算机上安装好python。
3.课前自行准备学习任务单。
课上学习任务
【学习任务一】明确要素,抽象建模
1.小组合作,根据数量关系的抽象结果,完成学习单任务一,建立计算模型。
【学习任务二】剖析过程,解决问题
1.小组合作,完成学习单任务二,仔细观察并填写表格,感受枚举思想。
x
除以3
除以5
除以7
是否符合条件
△
余
○
余
◇
余
1000
333
1
200
0
147
6
×
1001
1002
……
1073
……
1100
枚举x在___________范围内的每一个值,判断条件“___________________________
_________________________”是否同时满足,满足条件的x就是要求的解。
【学习任务三】枚举法的算法设计
1.在学习任务单中,完成流程图设计,在右侧选择合适的语句,将流程图补充完整。
2.自主沿着流程线方向走程序;组内讨论:语句选择的原因。
【学习任务四】编写程序,应用枚举法
1.在学习单完成任务四:根据流程图,将Python程序补充完整。
2.在计算机中打开Python,输入程序并运行调试,计算出剩余的士兵数量。
推荐的学习资源
信息科技(浙江教育版)六年级上 学习资源包
学科网(北京)股份有限公司
$
教学设计
课程基本信息
学科
小学信息科技(浙教版)
年级
六年级
学期
秋季
课题
第10课 “韩信点兵”枚举法的实现
教科书
书 名:信息科技教材
出版社:浙江教育出版社 出版日期:2023年7月
教学内容与学习对象分析
本课是六年级上册第二单元“算法的效率”的第3课,是“韩信点兵”问题的第一种算法实现,本课的学习内容主要包括“枚举法解决问题的一般过程”和“枚举法的程序实现”通过抽象建模、设计算法、验证算法三个环节,让学生体验算法解决过程的全过程。“抽象与建模”板块中根据已知条件,寻找数量关系,韩信点兵过程可表示为数的除法。在确定变量的同时,引导学生还需注意变量的范围,让学生感知算法的有限性。“算法设计”板块,根据抽象与建模,采用了流程图描述韩信点兵枚举法的过程,该算法涉及到循环结构和分支结构,逻辑简洁明了,参照流程图学生容易过渡到算法程序的编写。“算法程序实现”板块,Python中取余运算符号“%”和逻辑运算符号“and”是新知识,通过在程序代码填空关键语句,可感知算法与程序之间的关联。
学生经过五年级上册三个单元以及六年级上册第一单元的系统学习,学生对描述并解决问题的方法及其步骤有一定的了解,能根据实际问题用自然语言、流程图描述,会根据实际情况选择合理的算法控制结构。在第一单元“鸡兔同笼”问题解决过程中,学生对枚举算法的思想也并不陌生,在现实生活中有一定的认知基础。六年级学生已有相关数学知识的积累,对被除数、除数、商和除数有一定的掌握,为利用枚举算法解决问题打下基础。
教学目标分析(含核心素养导向)
1.通过小组合作使用枚举法解决“韩信点兵”问题,掌握枚举法解决问题的一般过程。
2.通过完善半成品程序,掌握枚举法的程序实现,提升解决问题的能力,提高核心素养。
教学重点:
掌握枚举法解决问题的一般过程。
教学难点:
枚举算法的程序实现
教学过程
一、探索:故事引入,提出问题
【学生活动】
1.听韩信点兵的故事,小组讨论,思考:“韩信点兵”问题中,韩信是用什么方法来统计士兵人数的?
2.阅读问题,思考:在“韩信点兵”问题中,关键要素是什么?
【教师引导】
1.情景呈现,出示“韩信点兵”故事,指出思考方向。
2.组织学生4人一小组,引导小组内讨论问题。反馈3个小组的思考结果。
3.引导学生抓住问题关键要素,提示思考方向:在韩信点兵的问题中,已知什么?求解什么?反馈1位学生的作答。
4.明确本课主题——用枚举法解决“韩信点兵”问题
二、建构:沙场点兵,解决问题
(一)明确要素,抽象建模
【学生活动】
1.根据提取出的关键要素,抽象数量关系
2.小组合作,根据数量关系的抽象结果,完成学习单任务一,建立计算模型。
【教师引导】
1.引导学生抽象数量关系。
2.引导学生根据范围和条件关系式,提炼计算模型,反馈2位学生的作答。
(二)剖析过程,解决问题
【学生活动】
1.小组合作,完成学习单任务二,仔细观察并填写表格,感受枚举思想。
x
除以3
除以5
除以7
是否符合条件
△
余
○
余
◇
余
1000
333
1
200
0
147
6
×
1001
1002
……
1073
……
1100
枚举x在___________范围内的每一个值,判断条件“___________________________
_________________________”是否同时满足,满足条件的x就是要求的解。
【教师引导】
1.巡导学生填写表格,反馈2位学生的作答。
2.小结:枚举法的关键:确定枚举的范围;正确解的判断条件。
x
除以3
除以5
除以7
是否符合条件
△
余
○
余
◇
余
1000
333
1
200
0
147
6
×
1001
333
2
200
1
148
0
×
1002
334
0
200
2
148
1
×
……
1073
357
2
214
3
153
2
√
……
1100
366
2
220
0
157
1
×
枚举x在 1000~1100范围内的每一个值,判断条件“ x除以3余数为2、x除以5余数为3、x除以7余数为2 ”是否同时满足,满足条件的x就是要求的解。
三、实现:算法设计、程序验证
【学生活动1】算法设计
1.在学习任务单中,完成流程图设计,在右侧选择合适的语句,将流程图补充完整。
2.自主沿着流程线方向走程序;组内讨论:语句选择的原因。
【教师引导】
1.巡导学习单完成情况,及时纠错。
2.反馈学生的填写和语句梳理情况。
【学生活动2】编写程序,应用枚举法
1.学习“%”和“and”的运用。在学习单中写出“x÷3余2”、“x除以3余2且x除以5余3且x除以7余2”的Python表达式。
2.在学习单完成任务四:根据流程图,将Python程序补充完整。
3.在计算机中打开Python,输入程序并运行调试,计算出剩余的士兵数量。
【教师引导】
1.讲解求余运算符号“%”和逻辑运算符号“and”的运用,引导学生将流程图条件判断模块翻译成Python语句。
2.巡视学生学生填写代码、程序的输入和调试的情况,关注学生单词输入和语句缩进等方面的操作,及时纠错。
3.反馈两位学生的作答情况。
四、作业练习
问题描述:假如“韩信点兵”的问题描述修改为:韩信带领1500名士兵去打仗,战后死伤一二百人。剩下士兵中,他命令士兵3人一排,结果多出1人;5人一排,结果多出4人;7人一排,结果多出3人。问剩下的士兵一共多少人?请用枚举法设计算法,修改流程图并修改代码。
1.完善流程图
2.修改代码
【教师引导】
1.引导学生留意x的取值范围和正确解的判断条件。
2.按学生能力,有意引导学生直接编写程序或修改程序。
五、课堂小结
1.交流:这节课中学习了哪些内容?反馈3位学生的回答
2.小结:
①枚举法的思想与关键
②“韩信点兵”枚举法关键
学科网(北京)股份有限公司
$