第02课 西街研学大巴调度 学生任务单

第02课 西街研学大巴调度

学生任务单 45分钟 姓名____________ 班级____________ 日期____________

用整除和取余描述满车数与余下人数,再计算刚好够用的车数。用0、40、41、47人检查算法,学会用边界数据找错误。

本课完成标准

□ 能区分 /、// 和 % 的结果及含义。

□ 能用给定整数公式计算车数,验证0、40、41、47人。

□ 能找出只取整除结果和一律加1的反例。

输入约定 人数 students 为非负整数,每车可用座位 seats 为正整数。单位分别为人、座和辆;模拟调度仅计算学生座位,不含其他出行安排。

先拆成五个小问题

纸面S题与网页小步练习可择一完成,另一套用于课后复核。

L2-S1 10人、每车4座,print(10 / 4) 得到什么?能否直接把它当作整辆车数?

L2-S2 补出只计算满车数的运算符:full = 10 ___ 4。

L2-S3 补出余下人数的运算符:left = 10 ___ 4。

L2-S4 47人每车20座,画成20、20、___三组。最终至少安排几辆?

L2-S5 9人每车4座,补全:buses = (9 + 4 - 1) ___ 4。结果是什么?

学习方法 先写预测,再运行核对。结果不一致时,保留原预测并写明修改原因。

L2-M1 主任务实验记录

按下面四步完成同一个程序。三组或四组输入必须使用同一套计算规则。

预测:每车20座,先填四组满车数、余下人数与车数。

修改:补全三个运算符;只改人数,座位始终为20。

运行:按0、40、41、47依次测试,逐项对照预测。

解释:选择40与41,说明为何只差1人却需要不同车数。

students = 47
seats = 20
full = students ___ seats
left = students ___ seats
buses = (students + seats - 1) ___ seats
print("满车数", full)
print("余下人数", left)
print("需要大巴", buses, "辆")
人数 人预测 满车/余人/车数运行 满车/余人/车数一致或修改
0
40
41
47

我的解释 用“能坐下全部人”和“少一辆就不够”检验一个非零人数结果;0人是否需要空车,也要说明。

修改记录 我改了哪一行?原来的问题是什么?用哪组数据证明已改对?

同桌核对 □ 数据符合范围 □ 已运行全部测试 □ 结果带单位 □ 能解释一条语句

分层练习与独立离堂题

基础题与离堂题必做。应用题有余力选一或课后完成;挑战题留作课后。离堂题独立完成。

L2-A1 基础 写出 print(17 // 5, 17 % 5) 的结果;把17改成20,结果怎样变化?

L2-A2 基础 47人每车20座。把满车数2、余下7人、最终3辆分别对应到 //、% 和够用车数公式。

L2-B1 应用 判断两种算法:students // seats 与 students // seats + 1。各用40或41人给出一个失败的例子。

L2-B2 应用 103本泉州文化读本,每箱装25本。求满箱数、余本数和刚好够用的箱数,再选100或101本复核。

L2-C1 挑战 每车3座,列出人数0、1、2、3、4、5、6对应的最少车数,用给定公式逐项核对。

L2-C2 挑战 若 seats = 0 或 students = -1,是否属于本题允许的数据?解释为什么不能直接沿用公式。

独立离堂题

L2-E1 独立完成:每车8座,分别有16人和17人。写出满车数、余下人数、最少车数,并说明只用 // 会在哪组失败。

学习状态 □ 我能独立完成 □ 我需提示 □ 我还要练习

我最需要再练的一点________________________________________________