1、第 11 课“韩信点兵”筛选法的实现教学设计 【课标内容要求】通过真实案例,知道算法步骤的执行次数与问题的规模有关,观察体验采用不同算法解决同一问题时在时间效率上的差别。针对简单问题,尝试设计算法,并通过程序进行验证。【教学内容分析】“韩信点兵”筛选法的实现这节课选自浙江教育出版社六年级上册第二单元。第二单元围绕不同算法与不同算法间的效率展开,主要包含算法多样性、算法评价这两块,以“韩信点兵”问题引出三种算法, 而筛选法位于枚举法和同余法之间,引出算法优化的思想,起着承上启下的作用,所以学好本课对整个单元的知识掌握极为重要。【教学目标】1. 通过抽象与建模,初步了解筛选法解决问题的一般过程,用
2、编程实现局部代码。2. 通过对比分析,组内讨论探究,明晰在解决同一问题采用不同步骤算法时对效率的影响。3. 在解决问题的过程中养成优化算法的习惯。重点:了解筛选法解决问题的一般过程,利用编程实现局部算法。难点:能判断算法的执行效率,选择合适的步骤算法解决问题。【核心素养指向】1. 了解并掌握用筛选法的过程,能选用合适的算法解决问题。(信息意识)2. 对问题进行抽象建模,并设计算法,初步了解筛选法解决问题的一般过程。(计算思维)3. 能用筛选法解决学习与生活中的问题,并对算法进行优化。(数字化学习与创新)【学情分析】本课的学习者是小学六年级的学生,经过前面算法实现一单元与“韩信点兵”枚举法的实现
3、一课的学习,学生对于算法的设计有了初步的了解,在本课的学习中,筛选法解决问题的,学生对算法设计并不会存在太大问题,但是在选用合适算法并对其进行优化这一过程中,可能会遇到困难。【设计构想】1. 整体设想思维导图:2. 教法:采用游戏导入的方式,引起学生兴趣,构建筛选过程雏形。在抽象与建模中,利用直观的划 去过程,体验流程,促进算法形成,通过编程验证局部算法。对调算法步骤,对标枚举法,明晰不同步骤算法影响效率,培育学生用最优算法解决问题的思想。并通过评价量规,进行及时准确的评价。3. 学法:引导学生进行自主探究与合作学习相结合的学习方法。4. 核心素养落实:学生分析韩信点兵问题,通过抽象、建模、算
4、法设计制定解决方案,利用流程图、python 模拟、验证解决问题的过程,对调步骤,对标枚举,反思、优化解决问题的方案,并将其迁移运用于解决导入中的游戏,求解质数等问题中,发展学生的计算思维。通过根据解决问题的需要,选择合适的算法,形成学生的信息意识。5. 评价设计:以韩信点兵筛选算法设计和流程图完成度为过程性评价依据,学生算法设计的合理性和科学性,是否能够高效解决问题,流程图的完整性和清晰度,是否符合任务要求,学生在小组讨论中的参与度和表现,以了解他们的思考能力和解决问题的能力。以案例算法优化为评价依据,对算法的优化程度, 是否能够提出有效地优化策略并实现算法性能的提升。考察优化后的算法在处理
5、相同问题时的效率和性能, 以评估优化的效果。以筛选质数设计算法为终结性评价,学生能否独立选择合适的算法,通过抽象、分解、建模、算法设计等方式解决问题。【教学环境及资源准备】硬件:多媒体计算机网络机房。软件:IDLE (Python 3.8 64-bit)、极域电子教室。资源:课件、板贴。【教学活动设计】一、激趣导入初步了解筛选过程1.游戏中的筛选。师:玩一个猜猜我是谁的游戏,全班起立,请一位学生描述他的特征,不符合特征的同学请坐下。 生:他是男生不是男生的坐下。 生:他戴着眼镜师:请你用自然语言描述刚才的过程。生:首先其次最后。师:像这样,一步一步将不符合条件的因素排除,留下符合条件的因素,像
6、这个过程,我们把它叫做筛选。今天我们就关于“韩信点兵”筛选法的实现来进行探讨【板书课题】【设计意图】运用游戏导入的形式,激发学生兴趣,在游戏中感受筛选的过程。二、新授设计算法并局部验证1. 抽象与建模师:韩信点兵的问题,能用筛选法解决吗,请同学们想一想。 师:根据问题你知道了什么?【问题】相传有一次,韩信带领 1500 名士兵去打仗。战后,死伤四五百人。剩下的士兵中,他命令士兵 3 人一排,结果多出 2 人;接着命令士兵 5 人一排,结果多出 3 人;又命令士兵 7 人一排,结果又多出 2人。韩信马上算出人数:我军还有 1073 名勇士! 生:有 10001100 人。师:我们可以用变量 x
7、表示人数。还知道了什么。生:x 除以 3 余数为 2。x 除以 5 余数为 3。x 除以 7 余数为 2。师:可以建立怎么样的模型解决这个问题?【出示示意图】生:我们可以在 10001100 这些数中,分别利用三个条件逐一进行筛选。第一次利用 x 除以 3 余数为 2 这个条件,删除 10001100 中不满足该条件的数,筛选出满足该条件的数。(教师划去 1000,1002,1042,1044,1071,1072,1098,1099)第二次,在上面筛选的数中,利用 x 除以 5 余数为 3 这个条件,删除其中不满足该条件的数,筛选出满足该条件的数。(用不同颜色划去 1001,1070,1097
8、,1100)第三次,在余下的数中,利用 x 除以 7 余数为 2 这个条件,删除其中不满足该条件的数,筛选满足该条件的数。(用不同颜色划去 1043)经过三次筛选,剩下的就是我们所求的值。师:请你根据上述抽象与建模,用筛选法的方法设计算法,给这 5 个图标排一排序。学生回答,教师用板贴排序,并标上序号。2. 活动 1:绘制流程图师:请你根据刚才的算法,绘制流程图。【也可用填空形式完成】【设计意图】用直观形象的划去,复现筛选法解决韩信点兵问题的过程,促进算法形成。用排序,流程图等形式,理顺学生思路。3. 活动 1局部验证 1师:设计完算法,接下来我们要利用 python 对上述算法进行局部验证,
9、请同学们用 python 显示10001100 范围内满足“x 除以 3 余数为 2”条件的数。学会根据课本和上节课的知识,进行测试验证。教师引导学生注意代码书写的规范,例如没加冒号, 没用英文半角输入,没有缩进等问题。教师演示,并讲解 end=” ” 的作用师:当老师在输出函数中添加了 end=” ”之后,这些数字之间并没有换行,而是用空格间隔开来, 这个 end=” ”表示 print()输出后不换行而输出空格。学生对代码进行修改。程序运行结果x=1000while x1101:if x % 3=2:print(x,end= ) x=x+11001 1004 1007 1010 1013
10、1016 10191022 1025 0128 1031 1034 1037 10401043 1046 1049 1052 1055 1058 10611064 1067 1070 1073 1076 1079 10821085 1088 1091 1094 1097 1100接下来要做什么,请你说一说。生:在 x 除以 3 余数为 2 的结果中,筛选出除以 5 余数是 3 的数;最后在剩下的数中,再找出除以 7余数为 2 的数,则是最终答案。【设计意图】由于完整的筛选算法现阶段学生无法实现,所以选择局部算法进行验证,并补充其中知识点,局部实现后再让学生用自然语言表述之后的过程。三、巩固提升
11、合理选择,优化算法1. 活动 3局部验证 2请你在 10001100 范围内将满足 x 除以 7 余数为 2 条件的数显示出来。程序运行结果x=1000while x1101:if x % 7=2:print(x,end= ) x=x+11003 1010 1017 1024 1031 10381045 1052 1059 1066 1073 10801087 10942. 对调步骤,养成反思、优化习惯师:请你思考一下,若对调步骤 2 和步骤 4,对算法的效率有什么影响。生反馈。师:我们一起来推导一下,到底有什么影响。师:没有对调之前,我们一起来计算一下,一共运算了几次。师:x 除以 3 余数
12、为 2,这一过程一共计算了 100 次,第二次筛选一共运算了 34 次,第三次筛选一个运算了 6 次。总计运算了 140 次。再来看看调换顺序后,运算了几次,第一次每个数都进行了筛选,一共 100 次,第二次运算了 14 次,第三次运算了 2 次,一共运算了 116 次。师:请你在纸条上模拟这个过程。生:对调步骤后,第一次筛选就把很多不符合条件的数排除了,第二次筛选时,符合条件的数少了很多,计算量大大减少。师:虽然只是调换了步骤,但是算法的效率却大幅提升,请同学想一想,哪种情况下,这个算法的效率是最高的。3. 对标枚举,分析两者优劣师:筛选法和我们上节课学的枚举法解决韩信点兵的问题时,哪个效率
13、更高?生:筛选法的效率更高,枚举法需要对每个数都进行 3 次计算,而筛选法中,不符合上一个条件的数将不会进行下一次的计算,计算效率更高。师:平常我们在解决什么问题时选择使用枚举法,或是选择筛选法呢? 生:密码找回、找规律、投票选择、设计食谱【设计意图】算法的效率是本单元的重点,首先通过对调步骤,让学生知晓步骤顺序不同,会影响效率,其次对比方法,让学生知晓算法不同,也会影响效率。最后,在解决问题时,让学生养成先选择合适算法,再优化算法的习惯。4. 优化游戏算法师:我们重玩一次游戏,还是刚才同学说的几个特征,你能找到更高效率的算法吗?【设计意图】承接导入,及时巩固优化算法。 5.活动 4用筛选法设计求解质数的算法。师:你能尝试用筛选法来解决这个问题吗?师:将 1100 内的质数筛选出来。说一说你是怎么筛选的? 生:(1)先把 1 删除;(2) 把除 2 外,2 的倍数删除;(3) 把除 3 外,3 的倍数删除;(3) 把除 5 外,5 的倍数删除;(4) 依次进行下去。四、总结评价师:通过这节课的学习你有什么收获。师:用今天的知识,能解决生活中哪些问题。【板书】
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。