第2课 西街研学大巴调度

45分钟 · 14页课件配套 · 每页含讲述、提问、答案与巡视重点。教师参考应在学生独立作答后使用。保持课程包目录完整,离线活动链接才可直接打开。

第02课 · 教师逐页讲稿

第01页 西街研学大巴调度

建议用时 1 分钟

讲述与活动

教师开场:今天为一次模拟研学安排车辆,目标是所有人都能坐下,同时不多安排车辆。请学生先不打开答案,想象把同学按每车座位数分组。强调人数、车型和座位都是课堂假设,实际活动还需考虑带队教师等因素;本课只研究已给定人数与可用座位。
课堂安排:共45分钟。教师精讲,学生在本课离线网页独立操作。课前打开包内本课HTML,无需班级座号登录和联网,提前完成本机Python初始化。绿色下划线文字为对应课程的可点击入口。
本套课件承接第1课,所有插画只作教学情境示意。封面背景使用生成式插画。

提问

人数与每车座位都已给定,要优化什么?

参考答案

让所有人坐下,而且少一辆就不够。本课只计算给定人数与可用座位。

巡视重点

区分课堂假设和实际研学安排,避免引出未给定条件。

第02课 · 教师逐页讲稿

第02页 分组问题与验证目标

建议用时 2 分钟

讲述与活动

教师提问:程序输出一个整数,就足以证明安排合理吗?预期学生说出要看总座位是否够用、少一辆是否仍能装下。将这两个标准口头解释为够用且不浪费。今天每人保留三组网页原问题的结果,并用一句话区分满车数与所需车数。巡视时关注学生是否能指出每个变量的现实含义。

提问

输出整数就一定是合理车数吗?

参考答案

不一定。须检查座位够不够,以及人数大于0时少一辆是否不足。

巡视重点

能否区分商、余数、最终车数,并说出单位。

第02课 · 教师逐页讲稿

第03页 29人,每车12座

建议用时 2 分钟

讲述与活动

教师先让学生画三段座位:第一车12个、第二车12个,还有5个人。提问:第三辆车没有坐满,算不算需要?预期回答当然需要,因此满车数不等于所需车数。让学生用29=12×2+5核对分组,强调单位:29和5是人,12是每车座位,2和3是车的数量。

提问

29人每车12座,2辆满车后还有多少人?

参考答案

29=12×2+5,剩5人,还需一辆,共3辆。

巡视重点

第三车未满仍然需要;余数表示人,不是空座位。

第02课 · 教师逐页讲稿

第04页 /、//与%的区别

建议用时 3 分钟

讲述与活动

教师指着上页分组提问:29除以12的结果适合直接填在租车数量里吗?不能租半辆车。左侧强调除法描述比例;右侧整除与取余分别描述完整分组和剩余部分。本课人数非负、座位为正,整除可理解为完整组数,不把这一说法扩展到负数。邀请学生用分组图解释符号,不要求背术语。

提问

29 / 12、29 // 12、29 % 12各表达什么?

参考答案

约2.417是除法结果,2是完整组数,5是剩余人数;29=12×2+5。

巡视重点

三个运算符是否混用,本课只用非负人数与正整数座位。

第02课 · 教师逐页讲稿

第05页 满车数、余数与车数

建议用时 3 分钟

讲述与活动

先让学生预测两个输出值,再逐行解释。students和seats保存输入数据,full与left保存计算结果,print只负责显示。问:如果只改人数,哪两个计算结果会随重新运行改变?预期是整除与余数。易错是把left误读成空座位数:这里left是剩余人数;剩余车的空座位另算,不能混淆变量意义。

提问

full与left各保存什么,怎样输出?

参考答案

full=2为满车数,left=5为剩余人数,print(full,left)显示2 5。

巡视重点

是否把left解释成空座位数,是否丢失实际含义。

第02课 · 教师逐页讲稿

第06页 整除边界的前后

建议用时 3 分钟

讲述与活动

教师逐行遮挡车数列,请学生先画图预测。24人恰好坐满两辆,25人只多一人却需要第三辆;23人虽然也有余数,仍然只需两辆。这三行说明不能仅凭人数大小猜车数。0人是有效输入,按本课规则需要0辆;座位为0不在规则范围,不能把报错视为有效车数。

提问

23、24、25人各需几辆12座车?0人呢?

参考答案

分别2、2、3辆,0人需0辆。25人跨过整倍数边界。

巡视重点

能否说明24人不需额外一辆;座位0不属于合法输入。

第02课 · 教师逐页讲稿

第07页 计算够用的车数

建议用时 2 分钟

讲述与活动

教师说明这是在人数非负整数、座位正整数时成立的算法。括号先算,再整除:29加11得到40,40整除12为3。它相当于提前补上最多11个位置;原来整除时不会多出整车,原来有余数时恰好补成下一车。理解有困难的学生先用表格验证;第4课还会用分支写更直观的版本。

提问

29人加11后再整除12,结果与适用条件是什么?

参考答案

(29+12-1)//12=3。人数为非负整数、每车座位为正整数。

巡视重点

括号位置与-1;看学生用0人和整倍数验证,不只背公式。

第02课 · 教师逐页讲稿

第08页 5个小步

建议用时 8 分钟

讲述与活动

让学生打开第2课学习页,按顺序完成五小步:除法、整除、余数、变量分组、够用车数。建议前3步3分钟、后2步5分钟。教师巡视不报选项,追问当前求的是比例、满车还是余下人数。遇到卡顿先让学生画小组或查看提示;已完成者口头解释第5步括号的作用,帮助同伴时只问问题。

提问

五小步分别在求什么?

参考答案

依次辨别除法、整除、余数、变量计算以及足够车数;具体答案见教师参考。

巡视重点

前3步3分钟,后2步5分钟;先画分组,帮助同伴只给提示。

教师参考

除法先看结果:2.5
解释:10 / 4得到2.5。这个数是除法结果,还不是够用的整辆车数。
只数满车://
解释:10 // 4得到2,表示2辆坐满;还需要另外检查余下的人。
还剩几个人:2
解释:10 = 4 * 2 + 2,所以10 % 4得到余下的2人。
用变量数满车:students = 8
seats = 3
print(students // seats)
预期输出:2
解释:students // seats是8 // 3,得到满车数2;余下2人另需安排。
算刚好够用的车:students = 9
seats = 4
buses = (students + seats - 1) // seats
print(buses)
预期输出:3
解释:(9 + 4 - 1) // 4就是12 // 4,得到3辆,能安排全部9人。
第02课 · 教师逐页讲稿

第09页 研学大巴调度程序

建议用时 8 分钟

讲述与活动

学生进入第2课练习页,使用网页原程序,保留students、seats、full、left、buses这些约定变量名。先按原数据运行,再分别改为40人、41人,并保留47人的记录。每次写人数、满车数、余数、最终车数和一句核对理由。程序检测含额外公开样例;检测通过后仍要讲清理由,不能把通过当作所有情况的证明。 程序检测同时核对结果变量和数字输出;按示例顺序输出满车数、余下人数、需要大巴数。可修改标签、添加说明或额外数据,仍须保留这些目标结果的输出与先后顺序。 本课原程序每车20座,教师讲解中的29人/12座是另一个示例;请不要混用两套数据。

提问

原题每车20座时,40、41、47人怎样分车?

参考答案

40人:full=2,left=0,buses=2;41人:2,1,3;47人:2,7,3。

巡视重点

保留students、seats、full、left、buses,先预测后运行并说明边界。

第02课 · 教师逐页讲稿

第10页 两种常见算法的反例

建议用时 2 分钟

讲述与活动

教师用新的例子说明:25人每车12座,仅取整除会少一辆;24人每车12座,每次整除后加1会多一辆。先让学生给反例再展示结论,不重复网页测验的选项。追问程序为什么在部分数据上看起来正确:有的错误只在恰好整除时出现。巡视记录学生能否主动选择反例,而不只尝试随机人数。

提问

为什么只整除和整除后一律加1都不够可靠?

参考答案

25//12=2会少一车;24//12+1=3会多一车。不同边界暴露不同错误。

巡视重点

能否主动举反例,而非只用一个成功样例下结论。

第02课 · 教师逐页讲稿

第11页 车数的边界检验

建议用时 2 分钟

讲述与活动

让学生任选一组自己的结果,用两条现实标准验证:车数乘座位不少于人数;人数大于0时,少一辆的总座位应小于人数。0人要单独说明不用车,不能机械解释负一辆。然后请学生补测1人和人数恰好等于座位数的情况。教师关注是否误把座位0当成边界;它是非法输入,不在本课算法适用条件内。

提问

怎样反查buses是否恰好够用?

参考答案

buses*seats>=students;人数>0时,(buses-1)*seats<students。0人单独核验为0车。

巡视重点

补0、1、恰好一车与改座位容量;比较运算本课可用口头解释。

第02课 · 教师逐页讲稿

第12页 迁移:读本装箱

建议用时 2 分钟

讲述与活动

供完成核心任务的学生选做:58本读本,每箱最多装16本。教师不立即公布结果,让学生把人数和座位重新解释成读本数与箱容量,指出哪部分算法可以保留。要求再选一个能恰好装满的数量进行核验。预期58本需4箱,48本需3箱;这些仅为教师核对,不要求全班在两分钟内完成独立程序。 本迁移若重命名变量,另存为作品,用自己的输入与预期核验;保留students等名称的原任务继续用于原程序检测。

提问

58本、每箱16本需几箱?恰好装满的例子呢?

参考答案

58本需4箱;48本需3箱。只改变变量含义与输出单位,分组算法相同。

巡视重点

迁移前先保存原版;变量改名后的迁移作品不用套用原题检测。

第02课 · 教师逐页讲稿

第13页 知识检测与自评

建议用时 4 分钟

讲述与活动

最后独立完成网页测一测,不投影答案。建议测验2分钟、自评和证据整理2分钟。让学生从三张分车记录中挑一张,补写商、余数、最终数量各表示什么。若测验错了,回到分组图或运行小例子后再尝试。提醒五小步、原生活问题和反思都需要完成,页面显示通过只是学习证据的一部分。

提问

错题订正怎样体现自己理解了?

参考答案

写出分组、反例或执行结果的依据,再修改选择;保留三组分车记录和一条边界解释。

巡视重点

先独立答题再看反馈;导出本机学习记录,不把进度当作唯一证据。

教师参考

知识题1:3辆。2辆只能坐40人,剩下7人还需要一辆,所以共3辆。
知识题2:students // seats + 1。40//20已经是2,再不加判断地加1会得到3,因而多租一辆。
知识题3:3 2。17=5×3+2,整除的商是3,余数是2。
第02课 · 教师逐页讲稿

第14页 分组计算与边界检验

建议用时 3 分钟

讲述与活动

教师请两位学生各用30秒解释一个术语和一个边界,另一位同学指出能支撑结论的数据。总结本课从生活分组到程序运算,再回到现实核验的过程。暂未理解公式的学生可以保留核对表,下节前继续用小数字验证,不把熟练背公式当作唯一目标。预告下一课让使用者输入数据,从修改代码走向可重复使用的预算工具。

提问

满车数与总车数何时相同,何时不同?

参考答案

余数为0时相同;余数>0时总车数比满车数多1。结论以本课输入范围为前提。

巡视重点

仍不懂公式者用小数目分组图继续解释,预告下课引入input。