第12课 “韩信点兵”同余法的实现 课件 2025-2026学年六年级上册信息技术浙教版

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

第12课 “韩信点兵”同余法的实现 课件 2025-2026学年六年级上册信息技术浙教版

资源简介

(共16张PPT)
第12课 “韩信点兵”同余法的实现
年 级:六年级
学 科:小学信息科技(浙教版)
韩信带领1500名士兵去打仗。战后,死伤四五百人。剩下的士兵中,他命令士兵3人一排,结果多出2人;接着命令士兵5人一排,结果多出3人;又命令士兵7人一排,结果又多出2人。问这队士兵有多少人?
情景呈现
思考:在有限的时间内,是否有更优的算法快速计算出士兵人数?
游戏1:快速说出50以内“除以3余数为2”的数。
5、8、11、14、17、20、23、26、29、32、35、38、41、44、47、50
游戏2:快速说出50以内“除以5余数为3”的数。
8、13、18、23、28、33、38、43、48
思考:这两组数有什么规律吗?
同余法:
当两个整数除以同一个整数时得到的余数相同,称这两个整数同余。
第一组差值为3,第二组差值为5,分别为各组的除数。
游戏解密——认识同余法
游戏3:快速说出50以内同时满足“除以3余数为2”、“除以5余数为3”的数
8、23、38
思考:如何使用同余法计算出第三组数据?这一组数据有什么规律吗?
第三组差值为15,这个差值是两个除数相乘的积。
同余法规律:
当两个整数分别除以不同的除数得到的余数相同,那么这两个被除数为同余,这两个整数的差值等于两个除数的最小公倍数。
共寻规律——理解同余法
1.自主在学习任务单中填写表格。
2.组内讨论:表格中数据的规律。
2
3
2
2
3
2
2
3
2
(观察:上下被除数之间的关系、余数之间的关系)
(1)这些被除数分别除以3、5、7得到的余数相同;
(2)这些被除数间的差值是三个除数的最小公倍数105;
(3)表格中的被除数也为同余,可以通过同余法计算得出。
探索:下一个被除数的值是多少?
探索“韩信点兵”问题
23
128
+105
+105
233
+105
338
+105
443
+105
548
+105
653
+105
758
+105
863
+105
968
+105
1073
1493
-105
1388
-105
1283
-105
1073
用同余法解决“韩信点兵”问题
关键数据: ;


变量: 。
数据关系: 。
同时满足“除以3余数为2、除以5余数为3、除以7余数为2”三个条件的任意一个数,如233
三个除数3、5、7的最小公倍数105
剩余士兵总数的取值范围:1000~1100
剩余士兵总数用变量s来表示,最小公倍数用k表示
当s初始值小于1000时,s=s+k;当s初始值大于1100时,s=s-k
抽象:
建模:
s<1000
s>1100
s+k
s-k
1000≤s≤1100
抽象与建模,同余点兵
1.在学习任务单中,完成流程图设计,在右侧3个备选项中选择合适的语句,将流程图补充完整。
同余法的算法设计
为变量s和变量k赋初始值。
判断为“是”,说明s<1000或s>1100,需要执行循环体,通过加上k或减去k来调整s的值。
判断为“是”,s<1000,加上k使s变大。
判断为“否”,s>1100,减去k使s变小。
判断为“否”,说明1000≤s≤1100,目标值已找到,结束循环
输出s的值
2.自主沿着流程线方向走程序;组内讨论:语句选择的原因。
同余法的算法设计
233
3*5*7
s<1000
s>1100
s=s+k
s=s-k
1.以小组为单位,在学习任务单中根据流程图,将Python程序补充完整。
2.在计算机中打开Python,输入程序并运行调试,计算出剩余的士兵数量。
编写程序,应用同余法
2.拓展:在程序中添加计算算法运行的时间,来比较各算法的效率。
import time
start=time.perf_counter() #开始计时
…… #主程序
end=time.perf_counter() #结束计时
print(end-start) #输出算法运行的时间
1.比较三种算法的效率:对比枚举法和筛选法,同余法的程序运算速度是否比前两种算法更快?
比较效率,拓展同余
若将上述“韩信点兵 ”问题的查找范围调整为2500~2600,修改上述算法及程序,并输出结果。
作业
使用同余法解决了“韩信点兵”问题。探寻了同余法的规律,探究了用同余法实现“韩信点兵”问题的过程,对同余法进行了抽象与建模和算法设计,成功应用验证了该算法。
课堂小结
谢谢观看!
Thanks!
https://www.21cnjy.com/recruitment/home/fine

展开更多......

收起↑

资源预览