浙教版六年级上册信息技术 第10课 “韩信点兵”枚举法的实现 课件(共14张PPT)

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

浙教版六年级上册信息技术 第10课 “韩信点兵”枚举法的实现 课件(共14张PPT)

资源简介

(共14张PPT)
第10课 “韩信点兵”枚 举法的实现
学习内容
枚举法的程序实现
枚举法解决问题的一般过程
探 索
“韩信点兵”的故事,同学们知道吗 韩信是怎么快速算出士兵的总人数的
探 索
建 构
“韩信点兵”故事是一个有趣的猜数游戏。它有很多种求解算法,例如枚举法。
一、问题描述
相传有一次,韩信带领1500名士兵去打仗。一场战役过后,士兵死伤四五百人。他命令剩下的士兵中3个人一排,发现多出来2个人;然后又命令5个人一排,多出来3个人;最后命令7个人一排,多出来2个人。韩信马上算出人数:我军还有1073名勇士!
二、抽象与建模
可以用数的除法运算来表示韩信点兵的过程。
二、抽象与建模
x=1000时,是否满足条件“x除以3余数为2、x除以5余数为3、x除以7余数为2”
x=1001时,是否满足条件“x除以3余数为2、x除以5余数为3、x除以7余数为2”
...
x=1100时,是否满足条件“x除以3余数为2、x除以5余数为3、除以7余数为2”
三、算法设计
根据刚才讲到的抽象与建模,可以用枚举法来解决“韩信点兵”的问题。
x依次取1000-1100范围内的值,采用循环结构;判断是否同时满足条件“x除以3余数为2,x除以5余数为3,x除以7余数为2”,采用分支结构。
三、算法设计
四、算法的程序实现
在 Python 中,“%”是求余数的运算符,x % y表达式是“用 x除以 y,取余数”,如“5 % 2”是 1。因此,条件“x 除 3 余 2 ”表示为:x % 3==2。
用“and”逻辑运算符来判断多个条件是否同时被满足,即 x and y 表达式的功能是“当 x 和 y 的值均为真时,表达式的值为真”。因此,“x 除 3 余 2 且 x 除 5 余 3 且 x 除 7 余 2 ?”就可用x % 3==2 and x % 5==3 and x % 7==2 来表示。
四、算法的程序实现
用 Python 语言编写上述算法:
练 习
假如将“韩信点兵”的问题修改为:
韩信带领1500名士兵去打仗,一场战役过后,士兵死伤100多人。他命令剩下的士兵3个人一排,发现多出来1个人;然后又命令5个人一排,多出来4个人;最后命令7个人一排,多出来3个人。问:剩下的士兵一共多少人
请同学们用枚举算法来解决上述问题。
谢谢!

展开更多......

收起↑

资源预览