资源简介 (共20张PPT)第10课 “韩信点兵”枚举法的实现年 级:六年级学 科:小学信息科技(浙教版)秦朝末年,楚汉相争。有一次韩信带领1500名将士与楚王大将李峰交战。苦战一场,楚军不敌,败退回营,汉军也死伤四五百人。于是韩信整顿兵马返回大本营,当行至一山坡,忽有后军来报,说有楚军骑兵追来。只见远方尘土飞扬,杀身震天,汉军本来已十分疲惫,这时队伍喧哗一片,韩信兵马到坡顶,见来敌不足五百骑,便急速点兵迎敌。他命令士兵3人一排,结果多出2人;接着命令士兵5人一排,结果多出3人;又命令士兵7人一排,结果又多出2人。韩信马上向将士们宣布:“我军有1073名勇士,敌人不足500,我们居高临下,以众击寡,一定能打败敌人。”情景呈现,提出问题思考:韩信是用什么方法来统计士兵人数?秦朝末年,楚汉相争。有一次韩信带领1500名将士与楚王大将李峰交战。苦战一场,楚军不敌,败退回营,汉军也死伤四五百人。于是韩信整顿兵马返回大本营,当行至一山坡,忽有后军来报,说有楚军骑兵追来。只见远方尘土飞扬,杀身震天,汉军本来已十分疲惫,这时队伍喧哗一片,韩信兵马到坡顶,见来敌不足五百骑,便急速点兵迎敌。他命令士兵3人一排,结果多出2人;接着命令士兵5人一排,结果多出3人;又命令士兵7人一排,结果又多出2人。韩信马上向将士们宣布:“我军有1073名勇士,敌人不足500,我们居高临下,以众击寡,一定能打败敌人。”描述问题,抓住关键思考:在韩信点兵的问题中,关键要素是什么?思考:“韩信点兵”问题中,关键要素是什么?描述问题,抓住关键已知什么? 数量关系 求什么?剩余士兵数量范围1000~1100求剩余士兵数量3人一排,多出2人5人一排,多出3人7人一排,多出2人1500名士兵,死伤四五百人找出1000~1100中符合条件的数枚举法:在确定范围内,有序地尝试每一种可能的解,如果满足正确解的条件就采纳,否则继续枚举,做到不遗漏、不重复。抽象数量关系明确要素,抽象建模韩信点兵的过程可以表示为数的除法运算。3人一排,结果多出2人5人一排,结果多出3人7人一排,结果多出2人指的是剩余的士兵总数,范围在1000-1100。用变量x来表示建模明确要素,抽象建模指的是剩余的士兵总数,用变量x来表示,变量x的范围为1000~1100。1000<=x<=1100“韩信点兵”计算模型小组合作,根据数量关系的抽象结果,完成学习单任务一,建立计算模型用枚举算法解决“韩信点兵”问题 x 除以3 除以5 除以7 是否符合条件余 余 余 1000 333 1 200 0 147 6 ×1001 1002 …… 1073 …… 1100小组合作,完成学习单任务二,仔细观察并填写表格、完成填空,感受枚举思想。枚举x在__________________范围内的每一个值,判断条件“_____________________________________________________________”是否同时满足,满足条件的x就是要求的解。用枚举算法解决“韩信点兵”问题 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在__________________范围内的每一个值,判断条件“_________________________________________”是否同时满足,满足条件的x就是要求的解。1000~1100x除以3余数为2、x除以5余数为3、x除以7余数为2小组合作,完成学习单任务二,仔细观察并填写表格、完成填空,感受枚举思想。剖析过程,解决问题x的值 满足条件 是否满足条件10001100判断“除以3余数为2,除以5余数为3,除以7余数为2”三个条件同时满足?判断的条件×1001×1002×…………1073√…………1099××x+1枚举法剖析过程,解决问题“枚举法”关键1000≤x≤1100确定枚举的范围:正确解的判断条件:“x除以3余2、x除以5余3、x除以7余2”是否同时满足?循环结构分支结构1.在学习任务单中,完成流程图设计,在右侧选择合适的语句,将流程图补充完整。枚举法的算法设计2.自主沿着流程线方向走程序;组内讨论:语句选择的原因。枚举法的算法设计为变量x赋初始值1000。判断为“是”,说明在枚举范围内,需要执行循环体,判断x是否满足正确解条件。判断为“否”,不满足正确解的条件,继续有序地枚举判断为“是”,满足正确解的条件,采纳,输出x的值,再继续有序地枚举判断为“否”,说明在枚举范围外,结束循环编写程序,应用枚举法运算符号“%”和逻辑运算符号“and”的运用x÷3余2判断 x÷3余2 且 x÷5余3 且 x÷7余2取余:求余数的运算符为“%”x%3==2x%5==3x%7==2andand且要判断多个条件同时满足,需要用“and”逻辑运算符表达式 x%y 的功能是:“用x除以y,取它的余数”例:条件5除以2的余数为1 可写为 5%2==1if1.以小组为单位,在学习任务单中根据流程图,将Python程序补充完整。编写程序,应用枚举法x<1101x%3==2 and x%5==3 and x%7==2x=x+12.在计算机中打开Python,输入程序并运行调试,计算出剩余士兵数量。(提示:在代码的输入的过程中,要注意标点符号与语句缩进。)编写程序,应用枚举法假如“韩信点兵”的问题描述修改为:韩信带领1500名士兵去打仗,战后死伤一二百人。剩下士兵中,他命令士兵3人一排,结果多出1人;5人一排,结果多出4人;7人一排,结果多出3人。问剩下的士兵一共多少人?请用枚举法设计算法,完成流程图、修改代码并运行调试。作业练习1.完善流程图2.修改代码并运行调试课例程序作业程序课堂小结枚举法思想关键有序地尝试每一种可能的解1.确定枚举的范围2.正确解的判断条件“韩信点兵”枚举法关键确定枚举的范围正确解的判断条件1000<=x<=1100x%3==2 and x%5==3 and x%7==2谢谢观看!Thanks!https://www.21cnjy.com/recruitment/home/fine 展开更多...... 收起↑ 资源预览