资源简介 (共31张PPT)UNIT 2 · LESSON 11 · 算法的效率浙教版 小学信息科技 · 六年级上册 · 第二单元 算法的效率“韩信点兵”筛选法的实现筛选法:一轮一轮筛,越筛越少主讲教师:×××学校:×××小学上一课一个一个试,这一次换成一轮一轮筛。本课导航CONTENTS本课导航筛一轮,候选少一半。后面几轮更省力。01承接:上一课那把尺子02换个办法:一轮一轮地筛03筛选法五步:先装进 a04三轮筛选:101 → 34 → 6 → 105写成程序,再做一次局部验证06练一练,理一理小浙提示先看这一课要走的六站,心里有个数。0203本课学习目标第二单元 算法的效率 · 第 11 课01能说出筛选法的做法:一轮一轮地筛,每轮删掉不满足一个条件的数。02能按顺序说出筛选法的五个步骤,并说清 a 里装的是什么。03能算出每一轮筛完剩几个数:101 → 34 → 6 → 1,答案 1073。04能说出对调步骤(2)(4)后结果一样,判断次数却不一样。一句话:目标没变,还是一样找 1073——换的是找它的办法。小浙提示读一遍目标,重点看“每轮剩几个数”这一条。0304承接:上一课那把尺子第一部分 · 从上一课接到本课上一课用枚举法把 1073 试了出来。这一课换一个办法,看看能不能少比几次。上一课枚举法:一个一个试101 个数一个一个试过去,每个都要拿三个条件比:最多 303 次判断;1073 是第 74 个被试到的数。这一课筛选法:一轮一轮筛不一个一个试:把范围里的数装进 a,每轮删掉不满足一个条件的数,剩下的进入下一轮。目标没变,还是找 1073——换个更省的办法。小浙提示一句话接上:答案还是 1073,方法换一个。0405读题:题目没变,换的是办法知识建构 · 问题描述题目一个字没变:还是那三句话、那个范围;变的是找答案的办法。范围1000~1100一共 101 个数,上一课已经算准了。条件三个都不变x % 3 == 2、x % 5 == 3、x % 7 == 2答案还是 1073上一课用枚举法试出来的那个数。这一课要回答的是新问题:不一个一个试,怎么把答案“筛”出来?题目不用重读一遍,直接换个办法接着做。小浙提示题目不用重读,直接说清这一课的新问题。0506核心:筛选法怎么筛核心页 · 本课落点一筛选法:一轮一轮地筛,每一轮删掉不满足一个条件的数,剩下的进入下一轮。每一轮只用一个条件这一轮只问一句话:满足它吗?别的条件先不管。满足的留下来继续留下的数进入下一轮,再去比下一个条件。不满足的当场删掉删掉的数不用再管,后面几轮就省下来了。像用筛子筛豆子:筛一次,要的留下、不要的漏掉——我们的“筛子”就是一个条件。筛三轮,最后剩下的那一个,就是答案。小浙提示重点讲第 2 张卡:一轮只用一个条件。0607核心:筛选法的五个步骤核心页 · 算法设计算法设计:先想清楚 a 里装什么,再想清楚每一轮删掉谁。01① 装进 a用 a 存储 1000~1100 范围里的数,一共 101 个。02② 删一轮删掉不满足“x 除以 3 余 2”的数,剩 34 个。03③ 再删一轮删掉不满足“x 除以 5 余 3”的数,剩 6 个。04④ 再删一轮删掉不满足“x 除以 7 余 2”的数,剩 1 个。05⑤ 输出找出 a 中剩下的数——它就是答案。小浙提示让学生把⑤圈起来:剩下的就是答案。0708核心:第一轮 · 筛“除以 3 余 2”核心页 · 筛选法第一轮第一轮只问一句话:x 除以 3 余 2 吗?不满足的,全部删掉。第一轮:101 个 → 34 个还剩 34 个01留下的1001、1004、1007 … 1097,一共 34 个。02删掉的1000、1002、1003 … 一共 67 个,不再参与后面两轮。一轮就砍掉三分之二——后面两轮要比较的数只剩 34 个。留下的继续,删掉的不用再管。小浙提示第一轮砍得最狠,让学生自己算 101 34。0809接着往下筛第二部分 · 从一轮走到三轮第一轮筛完,101 个只剩 34 个。第二轮、第三轮就在这 34 个里接着筛。已经做完第一轮筛完101 个 → 34 个,删掉的 67 个不用再管。接下来同一把筛子换成“除以 5 余 3”“除以 7 余 2”,接着筛。要记住越筛越少每筛一轮,要比较的数就少一批——这就是省。三轮筛完,a 里剩下的数就是答案。同一把筛子,换一个条件再筛一轮。小浙提示先问“接下来在哪几个数里筛”,再往下走。0910核心:第二轮 · 筛“除以 5 余 3”核心页 · 筛选法第二轮第二轮只在上一次剩下的 34 个数里筛:x 除以 5 余 3 吗?第二轮:34 个 → 6 个还剩 6 个01筛前34 个数,全都是第一轮留下来的。02筛后1013、1028、1043、1058、1073、1088,一共 6 个。第二轮只在 34 个数里比——同样三个条件,比枚举法省得多。越往后,要比较的数越少。小浙提示第 2 行那 6 个数,让学生数一数是不是 6 个。1011核心:第三轮 · 筛“除以 7 余 2”核心页 · 筛选法第三轮第三轮只在 6 个数里筛:x 除以 7 余 2 吗?剩下的就是答案。第三轮:6 个 → 1 个还剩 1 个01前 4 个数1013 余 5、1028 余 6、1043 余 0、1058 余 1,都不对。02第 5 个数1073 除以 7 余 2——三句话都满足,它就是答案。101 → 34 → 6 → 1:越筛越少,最后剩下的那一个就是答案。同一个答案,这回是“筛”出来的。小浙提示第 5 个才是 1073,前面 4 个余数都不对。1112核心:写成程序核心页 · 筛选法的程序实现把五步翻译成 Python:a 当筛子,每筛一轮就把 a 换成筛完的结果。a = list(range(1000, 1101))a = [x for x in a if x % 3 == 2]a = [x for x in a if x % 5 == 3]a = [x for x in a if x % 7 == 2]print("剩下的士兵数为:", a)逐行对应一行就是一步① 把 1000~1100 装进 a② 筛“除以 3 余 2”③ 筛“除以 5 余 3”④ 筛“除以 7 余 2”⑤ 输出 a 里剩下的数运行结果:剩下的士兵数为:[1073] ——和枚举法试出来的一样。a = [x for x in a if 条件] 就是“符合条件的留下,不符合的删掉”。小浙提示读一遍 ⑤ 行:剩下的就是答案。1213核心:局部验证核心页 · 算法验证算法验证:先只验证一小步——筛出满足一个条件的数,看对不对。局部验证:显示满足“除以 3 余 2”的数x = 1000while x < 1101:if x % 3 == 2:print(x, end=" ")x = x + 1看这一行print(x, end=" ")print 默认输出完就换行;把 end 写成空格,数就不换行、排成一行。运行结果:1001 1004 … 1097,一共 34 个数,正好是第一轮剩下的。教材练习:换成“除以 7 余 2”,输出 1003 … 1094,一共 14 个数。先验证一小步,整段程序才敢信。小浙提示重点看 end=" " 这一行:换行改成空格。1314核心:数一数比了几次核心页 · 本课落点二还是上一课那把尺子:数一数两种办法各要比几次。做法要比多少次判断答案怎么出来的枚举法(第 10 课)101 个数 × 3 个条件 = 303 次第 74 个被试到筛选法(本课)101 + 34 + 6 = 141 次第三轮只剩 1 个第一轮最费劲(要问 101 个数),后面两轮越来越省:一共省下 162 次判断。越筛越少,才叫省——筛选法省在“后面几轮几乎不用试”。会算次数,才知道省在哪里。小浙提示先问“比几次”,再说 303 和 141 的差。1415活动一:把五步写清楚学生活动 · 任务单活动一照着五个步骤,把筛选法的做法填完整。要做的事填一填① 装进 aa 里装 ______ ~ ______ 的数,一共 ______ 个② 第一轮删掉不满足“x 除以 ___ 余 ___”的数,剩 ___ 个③ 第二轮删掉不满足“x 除以 ___ 余 ___”的数,剩 ___ 个④ 第三轮删掉不满足“x 除以 ___ 余 ___”的数,剩 ___ 个⑤ 输出a 里剩下的是 ______填完对一对:101 → 34 → 6 → 1。小浙提示先让学生独立填写,再同桌对一对。1516活动二:跟着筛三轮学生活动 · 任务单活动二跟着筛选法往下走:填出每一轮筛完剩下的个数和剩下的数。轮次这一轮要满足的条件筛完剩几个剩下哪些数第一轮(已给)x % 3 == 234 个1001 1004 … 1097第二轮x % 5 == 3______ 个______第三轮x % 7 == 2______ 个______填完想一想:第三轮为什么只要比几个数就够了?先自己填,再同桌对一对。小浙提示第 2 行让学生自己算,别急着报答案。1617活动三:换一道题再筛一遍学生活动 · 任务单活动三还是 1500 名士兵,改成“死伤一二百人”,三个余数也换一换。要做的先自己填对一对(填完再看)范围1300 ~ 1400,一共 ______ 个数1500 200 = 1300;1500 100 = 1400筛三轮101 → ______ → ______ → ______101 → 34 → 7 → 1答案a 里剩下的是 ______1354范围还是 101 个数,三轮筛完剩下的就是答案——办法换了,步骤没变。换一道题,五个步骤还是那五个。小浙提示提醒:范围还是 101 个数,换的是三个余数。1718想一想:把(2)和(4)对调议一议思维 · 教材想一想想一想:把步骤(2)和步骤(4)对调,会有什么不同?筛的顺序中间剩下几个一共判断几次答案原来的顺序:3 → 5 → 7101 → 34 → 6 → 1101 + 34 + 6 = 141 次1073对调之后:7 → 5 → 3101 → 14 → 3 → 1101 + 14 + 3 = 118 次1073结果一样,中间剩下的个数不一样——先筛得狠的那条更省。先筛“除以 7 余 2”只剩 14 个:一共 118 次判断,比原来少 23 次。先筛哪一条,得看哪一条砍得最狠。小浙提示让学生自己算 101→14→3→1,再说结论。1819辨一辨练一练说法对 / 错我的理由筛选法一轮一轮地筛,每轮删掉不满足一个条件的数。筛选法也要先确定范围,这里还是 1000~1100。第一轮筛完剩 34 个,第二轮就在这 34 个里筛。三轮的顺序不能换,换了顺序就找不到答案。最后一轮只要比 6 个数,比第一轮省力得多。筛选法靠的是逐轮淘汰,不是把答案和每个数都硬比一遍。说清理由,比只写一个“对”或“错”更重要。小浙提示重点看第 3、4 句,理由要写出来。1920议一议:筛选法还能怎么更省议一议同一道题,筛选法能不能再省一点?调个顺序先筛最狠的先筛“除以 7 余 2”,只剩 14 个。缩小范围先粗定范围范围越准,第一轮比得越少。换个想法别筛了,直接算找出规律,用同余法算出来。同一道题,省的办法不止一种——下一课学同余法,直接把答案算出来。先把手上的筛选法用熟,再去想更省的办法。小浙提示让学生先举例,再说说哪种顺序最省。2021练习与小结:再算一遍账第三部分 · 练一练,理一理01练习14 题分三层:基础 1—5、提升 6—10、综合 11—14。02讲评重点讲第 6、7、8、9、14 题,说清为什么。03小结理一理:装进 a → 三轮筛 → 输出剩下的 → 数次数。做完就讲,讲完就理——这一课才算收口。小浙提示讲清练习分三层,错了不用急,先看是哪一层。2122随堂练习(一)基础题 1—5题号题目和选项我的答案1用筛选法解决问题,第一步要做的是什么?A 把范围里的数装进 a B 先把程序写出来 C 先猜一个答案2筛选法求“韩信点兵”,a 里装的是哪个范围的数?A 0~1500 B 1000~1100 C 1000~10733第一轮筛“x 除以 3 余 2”,用哪个式子判断?A x % 3 == 2 B x / 3 == 2 C x % 2 == 34第一轮筛完,a 里还剩几个数?A 101 个 B 34 个 C 6 个5三轮筛完,a 里剩下的数是哪一个?A 1073 B 1097 C 1001小浙提示第 1 题让学生说说 a 里装什么。2223随堂练习(二)提升题 6—10题号题目和选项我的答案6第二轮要在多少个数里筛?A 101 个 B 34 个 C 6 个7第三轮筛完只剩 1 个数,说明什么?A 算法写错了 B 它就是答案 C 还要再筛一轮8筛选法三轮一共比了几次判断?A 303 次 B 141 次 C 101 次9把步骤(2)(4)对调之后,一共比了几次?A 118 次 B 141 次 C 303 次10第二轮的 6 个数是 1013、1028、1043、1058、1073、1088,1073 排第几?A 第 4 个 B 第 5 个 C 第 6 个小浙提示第 8、9、10 题最容易混,让学生说清怎么算的。2324随堂练习(三)综合题 11—14题号题目和选项我的答案11判断:筛选法也要先确定范围,范围定小了同样会漏掉答案。A 对 B 错12判断:每一轮可以同时用三个条件筛,这样比一轮一个条件更省。A 对 B 错13判断:对调步骤(2)和(4)后,结果一样,中间剩下的个数不一样。A 对 B 错14判断:先筛哪一条条件都一样,一共比几次判断也不变。A 对 B 错小浙提示判断题也要写理由,重点第 12、14 题。2425参考答案对一对题号1234567答案ABABABB题号891011121314答案BABABAB讲评要点第 6、7 题:第二轮在 34 个里筛,第三轮只剩 6 个,最后剩的 1 个就是 1073。第 8、9 题:原顺序 101 + 34 + 6 = 141 次;对调后 101 + 14 + 3 = 118 次,少 23 次。第 10 题:1073 在 6 个数里排第 5;第 14 题:顺序会影响判断次数。小浙提示重点讲评第 6、7、8、9、14 题。2526课堂小结本课回顾1装进 a把 1000~1100 的 101 个数装进 a,a 就是候选池。2第一轮筛“x % 3 == 2”:101 个 → 34 个。3第二轮筛“x % 5 == 3”:34 个 → 6 个。4第三轮筛“x % 7 == 2”:6 个 → 1 个,剩下 1073。5本课落点越筛越少才叫省:一共 141 次判断,比枚举法的 303 次省。先筛哪一条,也值得想一想。小浙提示一句话:越筛越少,才叫省。2627关键概念记一记1筛选法一轮一轮地筛:每轮删掉不满足一个条件的数,剩下的进入下一轮。2候选池 a存放还没被删掉的数;每筛一轮,a 里的数就少一批。3局部验证先只验证算法的一小步,比如筛出满足一个条件的数,看结果对不对。4print 的 endprint(x, end=" ") 里的 end 指定输出结束符:默认换行,写成空格就排成一行。一轮筛一个条件;越筛越少,剩下的就是答案。小浙提示把这四个词抄进笔记本。2728学习评价评一评评价内容自评互评师评能说出筛选法是怎么做的:一轮一轮筛掉不满足条件的数☆☆☆☆☆☆☆☆☆能按顺序说出筛选法的五个步骤,说清 a 里装的是什么☆☆☆☆☆☆☆☆☆能算出每轮剩下的个数:101 → 34 → 6 → 1,答案是 1073☆☆☆☆☆☆☆☆☆能说出对调步骤(2)(4)结果一样、判断次数不一样☆☆☆☆☆☆☆☆☆☆☆☆ 能独立完成并说清理由;☆☆ 需要一点提示;☆ 需要同伴帮助。没到三星的那一项,就是课后的复习重点。小浙提示没到三星的,就是复习重点。2829课后作业分层完成01基础(必做)写出筛选法的五个步骤,算出每轮剩下几个数。02提高(选做)把顺序改成“先 7、再 5、最后 3”,数一数比几次。03拓展(选做)自己编一道“几排多几个”的题,再用筛选法筛一遍。04阅读读《一轮一轮筛,越筛越少》。程序和数据都用示例,不写真实同学的姓名和隐私信息。小浙提示程序和数字都用示例,不写真实姓名。2930拓展阅读读一读一轮一轮筛,越筛越少筛子大家都见过:淘米用的笊篱、工地筛沙子的筛网,都是把不要的漏掉,把要的留下。筛选法就是这个思路:先圈一个范围,再一轮一轮地问。每轮只问一句,不满足的当场删掉,剩下的进下一轮。韩信点兵这道题,101 个数筛三轮:34 个、6 个、1 个,最后剩下的就是 1073。讲究的地方在顺序:先筛“除以 7 余 2”,第一轮只剩 14 个,判断次数从 141 降到 118。读后想一想:范围写小了会怎样?如果先筛“除以 5 余 3”,1003 到 1098 一共几个数?小浙提示读后数一数:1003 到 1098,一共几个?30本课结束 谢谢观看课后想一想:三条条件里,先筛哪一条最省?浙教版 小学信息科技 · 六年级上册《“韩信点兵”筛选法的实现》教学设计第二单元 算法的效率 · 第 11 课 · 1 课时(40 分钟) · 配套课件 31 页课题 “韩信点兵”筛选法的实现 教材版本 浙教版六年级上册单元 第二单元 算法的效率 课时 1 课时(40 分钟)执教教师 学校课型 新授课 授课时间一、教材分析《“韩信点兵”筛选法的实现》是浙教版小学信息科技六年级上册第二单元“算法的效率”的第四课,紧接第 10 课《“韩信点兵”枚举法的实现》。它与第 12 课《同余法》一起,构成教材“同一个问题、不同的解法、不同的代价”这条线:题目一个字都不变,换的是找答案的办法。第 10 课用枚举法把 1073 一个一个试了出来;本课改用筛选法,一轮一轮地删,看能不能少比几次。教材给出的核心内容有四项。一是筛选法的做法:把范围内的数装进 a,每一轮只用一个条件,把不满足这个条件的数删掉,剩下的进入下一轮。二是筛选法的五个步骤:① 用 a 存储 1000~1100 的数;② 删掉不满足“除以 3 余 2”的,剩 34 个;③ 删掉不满足“除以 5 余 3”的,剩 6 个;④ 删掉不满足“除以 7 余 2”的,只剩 1 个;⑤ 找出 a 中剩下的数。三是程序实现:a = [x for x in a if 条件] 就是“符合条件的留下、不符合的删掉”,每一轮把 a 换成筛完的结果。四是算法验证:先做局部验证,只筛出满足一个条件的数,看结果对不对;print(x, end=" ") 里的 end 指定输出结束符,把数排成一行。教材的“想一想”问的是把步骤②和④对调会有什么不同;练习要求显示 1000~1100 里满足“除以 7 余 2”的数,一共 14 个。二、学情分析六年级学生已经学过循环、分支和列表,第 10 课又亲手用枚举法算过这道题、数过账,所以本课的难点不在写程序,而在三处转弯。第一处转弯是“换办法不换题”:学生容易以为要重新读题、重新建模,实际上范围、条件、答案都没变,变的只是比法。第二处转弯是“每一轮只用一个条件”:枚举法是把三个条件一起比,筛选法是一轮问一句,学生容易把两种办法混起来。第三处转弯是“数次数”:三轮的判断次数是 101 + 34 + 6 = 141,不是 101 × 3,学生容易拿枚举法的算法去套。本课的设计要点是“一道题、一条链、两个落点”。全课只做一件事:把上一课那道韩信点兵,改用筛选法筛一遍。第一步,把上一课的账摆出来(303 次判断),问一句能不能少比几次;第二步,读题只花两分钟,说明题目和条件都不变;第三步,讲透筛选法怎么筛(落点一):一轮一个条件、满足的留下、不满足的删掉;第四步,按五个步骤走完三轮,画出同一条刻度上的 101 → 34 → 6 → 1;第五步,把五步翻译成五行程序,再做一次局部验证;第六步,用上一课那把尺子数账(落点二):141 次对 303 次,省下 162 次;第七步,用教材的“想一想”把顺序提出来,再辨析六句话;最后收口成一句:越筛越少,才叫省。每一段后面紧跟一个动笔的活动:活动一填五个步骤,活动二跟着筛三轮,活动三换成“死伤一二百人”再筛一遍。全课数据统一:范围 1000~1100(101 个数)、三轮剩下 34、6、1 个、答案 1073、筛选法 141 次、枚举法 303 次、对调顺序后 118 次。所有数据和程序都是示例数据,不出现真实的未成年人姓名。三、教学目标信息意识· 知道同一个问题可以有不止一种解法,会比较两种办法谁比得少。· 知道计算机算得快,但办法选得不对照样要多比很多次,愿意关心“这个办法比了几次”。计算思维· 能说出筛选法是怎么筛的:一轮一轮地筛,每轮删掉不满足一个条件的数。· 能按顺序说出筛选法的五个步骤,并说清 a 里装的是什么。· 能算出每轮筛完剩几个数(101 → 34 → 6 → 1),并算出筛选法一共 141 次判断,比枚举法的 303 次少 162 次。数字化学习与创新· 能读懂五行筛选法程序,说出哪一行对应五个步骤里的哪一步。· 会做一次局部验证:只筛出满足一个条件的数,看结果对不对;知道 print(x, end=" ") 里的 end 是什么意思。信息社会责任· 本课的程序与数据都是示例数据(范围 1000~1100、答案 1073、判断次数 141 次),不出现真实同学的姓名与隐私信息。· 说结论时愿意摆数据、讲道理,不凭感觉说“筛得越多越好”。四、教学重点与难点教学重点:能说出筛选法的做法(一轮一轮地筛,每轮删掉不满足一个条件的数,剩下的进入下一轮);能按顺序说出筛选法的五个步骤,说清 a 里装的是什么;能算出每轮筛完剩几个数(101 → 34 → 6 → 1),并说清答案 1073 是三轮筛完剩下的。教学难点:分清筛选法与枚举法的比法不同——枚举法是一个数比三个条件,筛选法是一轮只问一个条件;理解判断次数怎么数——筛选法是 101 + 34 + 6 = 141 次,不是 101 × 3;理解对调步骤②④后结果一样、判断次数不一样(141 次对 118 次)。五、教学准备教师:教学课件(31 页)、核心动画(约 5 分钟,带配音)、筛选条与候选池 a 磁贴(自制)、三轮筛选记录表(自制)、学生活动任务单、学习评价表。学生:活动任务单、笔、直尺。六、教学方法与学法指导教法:任务驱动法、问题链教学法、对比教学法、讨论辨析法。以“同样找 1073,能不能少比几次”这一个问题贯穿全课,用一道题把筛选法的五步走完。学法:对比观察法、填表记录法、跟着走一遍演示法、数数验证法。学生先看清两种办法的比法不同,再跟着筛三轮把每轮剩下的个数填出来,最后数出三轮一共比了几次。七、教学过程环节 教师活动 学生活动 设计意图 时间一、承接与导入 不重讲第 10 课的过程,只把上一课的账摆出来:101 个数一个一个试,每个都要拿三个条件比,最多 303 次判断,1073 是第 74 个被试到的数。问一句:能不能不比这么多次?出示课题和本课导航的六站,说明全课只做一道题。 说出上一课枚举法比了几次;明确这一课换个办法来找 1073。 一句话接到本课,全课不换情境;把 303 次这个“旧账”当尺子,后面量新办法才有对照。 3 分钟二、读题与立方法 读题页两分钟走完:让学生自己说出三件事——范围还是 1000~1100(101 个数)、条件还是那三个(除以 3 余 2、除以 5 余 3、除以 7 余 2)、答案还是 1073。再把筛选法正面立起来(落点一):一轮一轮地筛,每一轮只用一个条件,满足的留下来进下一轮,不满足的当场删掉;用筛豆子打比方——我们的“筛子”就是一个条件。 复述“题目没变、条件没变”;把三张卡连起来说一遍:一轮一个条件 → 满足的继续 → 不满足的删掉。 先把“换办法不换题”说清楚,学生才不会重新读题浪费时间;“一轮只问一句”这条标准,是后面辨析第 12 句的依据。 5 分钟三、五步与三轮筛选 按五行读五个步骤,边读边问“a 里现在有几个数”;再用同一条刻度把三轮画出来:第一轮问 101 个数、剩 34 个;第二轮只在这 34 个里问、剩 6 个;第三轮只在 6 个里问,前 4 个都不对,第 5 个 1073 除以 7 余 2,剩 1 个。落到一句:101 → 34 → 6 → 1,越筛越少,最后剩下的那一个就是答案。随即组织活动一、活动二。 跟着数每轮剩下的个数;在活动一里填完整的五个步骤;在活动二里填出第二、三轮剩下的个数和剩下的数。 本课的主干都在这一环节——五步要能照着写出来,三轮要能一条线看下来。把 101、34、6、1 画在同一条刻度上,“越筛越少”才是看得见的。 8 分钟四、写成程序与局部验证 把五步翻成五行程序,逐行对应读一遍:a = list(range(1000, 1101)) 装进范围;三行 a = [x for x in a if 条件] 各筛一个条件,每筛一轮 a 就换成筛完剩下的结果;最后一行输出 a。说清运行结果是 [1073]。再做局部验证:只写一小段,筛出满足“除以 3 余 2”的数,看是不是 34 个;顺带讲 print(x, end=" ") 里的 end 是什么意思。教材练习接着做:换成“除以 7 余 2”,输出 14 个数。 读程序并说出每一行对应五个步骤里的哪一步;看局部验证的运行结果,说出它为什么正好是第一轮剩下的那些数。 先验证一小步,整段程序才敢信——这是教材“算法验证”的要求。局部验证的结果和第一轮剩下的一样,也顺便把三轮之间的关系再钉一遍。 5 分钟五、落点二:数一数比了几次 拿上一课那把尺子算账:枚举法是 101 个数乘 3 个条件,一共 303 次判断;筛选法是 101 加 34 加 6,一共 141 次,省下 162 次。点出筛选法的省法:第一轮最费劲(要问 101 个数),后面两轮几乎不用试。落在“越筛越少,才叫省”。 跟着把两个次数算出来,说出省了多少次;说出筛选法省在“后面几轮要比较的数少了”。 这是本课的价值落点:会算次数,才知道省在哪里。把 141 和 303 摆在一起,上一课的尺子才真正用在了新算法上。 4 分钟六、学生活动一、二、三 活动一对着五个步骤填完整;活动二跟着筛三轮,填出第二、三轮剩下的个数和剩下的数;活动三换数据不换方法:还是 1500 名士兵,改成“死伤一二百人”,范围 1300~1400,三个余数换成 1、4、3,让学生自己筛一遍(101 → 34 → 7 → 1,答案 1354)。 动手填三张表;同桌互查;在活动二下回答问题:第三轮为什么只要比几个数就够了。 三个活动正好对应本课的三个能力:会说步骤、会跟着筛、会换个题再筛。活动三换数据不换方法,检验的是方法是不是真的学会了。 6 分钟七、想一想、辨一辨、议一议 把教材的“想一想”提出来:把步骤②和④对调,会有什么不同?摆数据:原来 3 → 5 → 7,中间剩 34 个、6 个,一共 141 次;对调成 7 → 5 → 3,中间只剩 14 个、3 个,一共 118 次——少了 23 次。结论:结果一样,中间剩下的个数不一样,先筛得狠的那条更省。再念辨一辨的六句话,重点问第 4 句;最后议一议“筛选法还能怎么更省”(调顺序、缩范围、换个想法),点一句下一课学同余法。 比较两种顺序的中间个数和判断次数,自己说一句结论;判断题写清理由;听一听三种更省的办法,说说自己最想先试哪一种。 本课的思维含量在这一环节:顺序会影响判断次数。议一议只开个头,把“别筛了、直接算”留给下一课,形成单元内的递进。 4 分钟八、练习、小结与评价 交代 14 题分三层(基础 1—5、提升 6—10、综合 11—14)与讲评重点(第 6、7、8、9、14 题);对答案后顺着板书理一遍:装进 a → 三轮筛 → 输出剩下的 → 数次数。核对学习评价表,布置分层作业,预告下一课同余法。 独立完成基础题,提升题与综合题同桌互查;对答案后订正;照着板书复述五步;完成自评,记下没到三星的那一项。 用练习检验三件事是否落地:会不会说五步、会不会数每轮剩下的个数、会不会算筛选法的判断次数。整课收口成一句话——越筛越少,才叫省。 5 分钟八、板书设计“韩信点兵”筛选法的实现筛选法:一轮一轮地筛,每轮删掉不满足一个条件的数五步:① 装进 a → ② 删一轮 → ③ 再删一轮 → ④ 再删一轮 → ⑤ 输出剩下的a 装 1000~1100 的 101 个数:101 → 34 → 6 → 1,剩下 1073条件:x % 3 == 2、x % 5 == 3、x % 7 == 2(一轮只问一句)账:筛选法 101 + 34 + 6 = 141 次;枚举法 101 × 3 = 303 次,省了 162 次程序(示例,5 行):a = list(range(1000, 1101))a = [x for x in a if x % 3 == 2]a = [x for x in a if x % 5 == 3]a = [x for x in a if x % 7 == 2]print("剩下的士兵数为:", a)运行结果:剩下的士兵数为:[1073]本课落点:越筛越少,才叫省。一句话:一轮只问一句,不满足的当场删掉。九、作业设计(分层)基础题(必做):在任务单“认一认”里把空补完整;再把筛选法的五个步骤写清楚,算出每轮剩下几个数,并说出答案 1073 是第几轮筛完剩下的。提高题(选做):把顺序改成“先 7、再 5、最后 3”,数一数中间各剩几个,一共比几次,和原来比少了几次。拓展题(选做):自己编一道“几排多几个”的题,先定范围,再写条件,最后用筛选法一轮一轮筛出答案。阅读任务:读《一轮一轮筛,越筛越少》,想一想如果范围写小了会怎样,先筛“除以 5 余 3”又会怎样。作业要求:程序和数据都用示例,标明“示例数据”;不出现真实同学的姓名和隐私信息。任务单练习参考答案:题号 1 2 3 4 5 6 7答案 A B A B A B B题号 8 9 10 11 12 13 14答案 B A B A B A B讲评要点:第 6、7 题说清第二轮在 34 个里筛、第三轮只剩 6 个,最后剩的 1 个就是 1073;第 8、9 题把两个次数算出来——原顺序 101 + 34 + 6 = 141 次,对调后 101 + 14 + 3 = 118 次,少 23 次;第 10 题提醒 1073 在 6 个数里排第 5,不要把它和答案本身混起来;第 14 题是本课的价值落点——同一道题,筛的顺序会影响判断次数。活动二里学生最容易填错的是第二轮的个数(要从 34 个里筛,不是从 101 个里筛),讲评时把“每一轮只在上一轮剩下的数里筛”再说一遍。十、学习评价说明本课采用自评、互评、师评相结合的方式,评价维度包括:能否说出筛选法是怎么做的(一轮一轮筛掉不满足条件的数);能否按顺序说出五个步骤、说清 a 里装的是什么;能否算出每轮剩下的个数(101 → 34 → 6 → 1),并说清答案 1073 是筛出来的;能否说出对调步骤②④结果一样、判断次数不一样。星级标准:☆☆☆ 能独立完成并说清理由;☆☆ 需要一点提示;☆ 需要同伴帮助。十一、教学反思(课后对照以下问题填写)· 学生能不能自己说出“题目没变、条件没变、变的是比法”,而不是把第 10 课的建模重来一遍?· 讲筛选法时,有没有学生仍然把三个条件一起比,把筛选法讲成了枚举法?· 数次数时,有多少学生把 101 + 34 + 6 算成了 101 × 3?· 活动二里,有多少学生把第二轮写成“在 101 个里筛”?· 局部验证那一页,学生能不能说出“验证一小步”和“整段程序”的关系?· 辨析第 4 句时,有没有学生仍然认为“三轮的顺序不能换”,把“结果一样”当成“过程一样”?· 落点句“越筛越少,才叫省”,学生能不能用自己的话说一遍,并举出省在哪一轮?浙教版小学信息科技六年级上册 · 第 11 课《“韩信点兵”筛选法的实现》学习任务单班级:__________ 姓名:__________ 日期:__________本单的范围(1000~1100)、每轮剩下的个数、答案 1073 和判断次数都是示例数据;请你也只写示例,不出现真实同学的姓名。认一认 认识筛选法的五个步骤先填一填:这一课的几个关键点,能自己写出来才算听懂。要认清的 我填筛选法:一轮一轮地筛,每一轮删掉不满足___个条件的数。满足条件的数留下来,进入___轮;不满足的当场___掉。a 里装的是 1000~1100 的数,一共___个。三轮筛完分别剩下:第一轮___个,第二轮___个,第三轮___个。三轮筛完,a 里剩下的是____,它就是答案。“x 除以 3 余 2”写成式子:__________。筛选法三轮一共比___次判断;枚举法要___次。把步骤(2)和(4)对调后,一共比___次,少了___次。本课落点:越筛越___,才叫___。我的疑问:________________________。活动一 把五个步骤写清楚照着五个步骤,把筛选法的做法填完整。填完对一对:101 → 34 → 6 → 1。要做的事 填一填① 装进 a a 里装 ______ ~ ______ 的数,一共 ______ 个② 第一轮 删掉不满足“x 除以 ___ 余 ___”的数,剩 ___ 个③ 第二轮 删掉不满足“x 除以 ___ 余 ___”的数,剩 ___ 个④ 第三轮 删掉不满足“x 除以 ___ 余 ___”的数,剩 ___ 个⑤ 输出 a 里剩下的是 ______第一步为什么不能少:____________________。活动二 跟着筛三轮跟着筛选法往下走:填出每一轮筛完剩下的个数和剩下的数。记住每一轮只在上一轮剩下的数里筛。轮次 这一轮要满足的条件 筛完剩几个 剩下哪些数第一轮(已给) x % 3 == 2 34 个 1001 1004 … 1097第二轮 x % 5 == 3 ______ 个 ______第三轮 x % 7 == 2 ______ 个 ______填完想一想:第三轮为什么只要比几个数就够了?____________________________。活动三 换一道题再筛一遍还是 1500 名士兵,改成“死伤一二百人”,三个余数也换一换。五个步骤还是那五个,先自己填一遍。要做的 先自己填 对一对(填完再看)范围 1300 ~ 1400,一共 ______ 个数 1500 200 = 1300;1500 100 = 1400筛三轮 101 → ______ → ______ → ______ 101 → 34 → 7 → 1答案 a 里剩下的是 ______ 1354比一比:范围还是 101 个数,步骤也没变,可筛出的答案换了。我的发现:________________________。辨一辨 下面说法对不对先判断对错,再写清理由。理由比结论更重要。说法 对 / 错 我的理由筛选法一轮一轮地筛,每轮删掉不满足一个条件的数。筛选法也要先确定范围,这里还是 1000~1100。第一轮筛完剩 34 个,第二轮就在这 34 个里筛。三轮的顺序不能换,换了顺序就找不到答案。最后一轮只要比 6 个数,比第一轮省力得多。筛选法靠的是逐轮淘汰,不是把答案和每个数都硬比一遍。练一练 随堂练习基础题 1—5 全班必做;提升题 6—10、综合题 11—14 同桌互查。拿不准的题,回到“一轮只在上一轮剩下的数里筛”上想。题号 题目 我的答案1 用筛选法解决问题,第一步要做的是什么?A 把范围里的数装进 a B 先把程序写出来 C 先猜一个答案2 筛选法求“韩信点兵”,a 里装的是哪个范围的数?A 0~1500 B 1000~1100 C 1000~10733 第一轮筛“x 除以 3 余 2”,用哪个式子判断?A x % 3 == 2 B x / 3 == 2 C x % 2 == 34 第一轮筛完,a 里还剩几个数?A 101 个 B 34 个 C 6 个5 三轮筛完,a 里剩下的数是哪一个?A 1073 B 1097 C 10016 第二轮要在多少个数里筛?A 101 个 B 34 个 C 6 个7 第三轮筛完只剩 1 个数,说明什么?A 算法写错了 B 它就是答案 C 还要再筛一轮8 筛选法三轮一共比了几次判断?A 303 次 B 141 次 C 101 次9 把步骤(2)(4)对调之后,一共比了几次?A 118 次 B 141 次 C 303 次10 第二轮的 6 个数是 1013、1028、1043、1058、1073、1088,1073 排第几?A 第 4 个 B 第 5 个 C 第 6 个11 判断:筛选法也要先确定范围,范围定小了同样会漏掉答案。A 对 B 错12 判断:每一轮可以同时用三个条件筛,这样比一轮一个条件更省。A 对 B 错13 判断:对调步骤(2)和(4)后,结果一样,中间剩下的个数不一样。A 对 B 错14 判断:先筛哪一条条件都一样,一共比几次判断也不变。A 对 B 错评一评 学习评价在对应的星级上打钩,三星表示做得很好。没到三星的那一项,就是课后的复习重点。评价内容 自评 互评 师评能说出筛选法是怎么做的:一轮一轮筛掉不满足条件的数 ☆☆☆ ☆☆☆ ☆☆☆能按顺序说出筛选法的五个步骤,说清 a 里装的是什么 ☆☆☆ ☆☆☆ ☆☆☆能算出每轮剩下的个数:101 → 34 → 6 → 1,答案是 1073 ☆☆☆ ☆☆☆ ☆☆☆能说出对调步骤(2)(4)结果一样、判断次数不一样 ☆☆☆ ☆☆☆ ☆☆☆课后作业1. 基础(必做):把上面“认一认”的空补完整;再把筛选法的五个步骤写清楚,算出每轮剩下几个数,并说出答案 1073 是第几轮筛完剩下的。2. 提高(选做):把顺序改成“先 7、再 5、最后 3”,数一数中间各剩几个,一共比几次,和原来比少了几次。3. 拓展(选做):自己编一道“几排多几个”的题,先定范围,再写条件,最后用筛选法一轮一轮筛出答案。4. 阅读:读一读《一轮一轮筛,越筛越少》,想一想范围写小了会怎样,先筛“除以 5 余 3”又会怎样。5. 提醒:程序和数据都要标明“示例数据”,不出现真实同学的姓名和隐私信息。我的记录区(可以把每轮剩下哪些数、或者自己想到的更省的办法写在这里):____________________________________________________________________________________________________________________________________________________________________________________ 展开更多...... 收起↑ 资源列表 第11课_“韩信点兵”筛选法的实现_学习任务单.docx 第11课_“韩信点兵”筛选法的实现_教案.docx 第11课_“韩信点兵”筛选法的实现_核心动画.mp4 第11课_“韩信点兵”筛选法的实现_课件.pptx