1、浙教版(2023)信息科技五上 第14课 算法的验证课题 算法的验证单元第三单元学科信息科技年级五年级教材分析本单元前4课已经介绍了设计算法的一般过程,学生能够将问题分解、抽象、建模,并设计算法。本课按照算法验证的3种方式,通过对“最短距离算法”的验证,让学生对算法的执行过程有更深入的认识。学生已经学习了变量、用流程图描述算法和算法的特征,能够理解变量在算法中的作用,知道变量的值从何而来。本课第一部分安排“根据算法特征验证”,旨在让学生通过对流程图的观察,回忆算法的特征、变量值的来源,熟练地用流程图描述算法,能够改正错误之处,确保算法的描述是有效的。第二部分安排“用数据验证算法”,根据算法能够
2、通过部分测试数据,让学生感受算法验证的作用和重要性,能将具体数据代人流程图,并逐步计算得到结果。第三部分安排“用计算机程序验证算法”,不要求学生理解具体程序,以体验为主,可以让学生调整具体参数加深体验感受。通过和第二部分测试数据过程的对比,让学生感受到利用程序验证算法的速度优势,但要让学生先明白应尽可能保证算法有效,再利用程序验证算法。因为用程序实现算法也需要花费时间和精力,如果跳过前两步验证,可能需要多次修改算法和程序,甚至在编写程序过程中就会遇到问题。教学目标1.通过项目实践,掌握用算法特征、数据及程序验证算法有效性的方法。2.通过算法的验证,初步形成模拟、验证解决问题的思维。学情分析学生
3、通过前阶段的学习,了解算法的基本概念,认识了不同的描述算法的方法,通过对实例的描述掌握自然语言和流程图描述问题的方法,能借助数字化工具或在线平台绘制流程图,掌握问题分解和抽象的基本方法,初步学会建立和利用模型的方法,能通过不同算法解决同一问题。教学重点、难点教学重点:掌握用算法特征、数据及程序验证算法有效性的方法。教学难点:掌握用数据验证算法的方法。教学准备最短距离算法的程序。教学实施过程情境导入教师活动学生活动设计意图1. 视频导入,引出问题,组织讨论播放视频,引导学生思考可以使用什么方法对设计的算法进行验证。2. 引出主题,提出目标算法的有效性,可以根据算法特征来验证流程图描述的算法是否正
4、确,也可以用具体数据来验证算法的输出结果是否正确,还可以编写程序在计算机上验证算法。提出本节课目标:掌握验证算法有效性的方法。学生观看视频,思考算法验证方法。通过思考讨论的形式引入本课主题。教学活动一根据算法特征验证教师活动学生活动设计意图1.播放视频,引导学生思考如何根据算法的特征进行检验。引导学生小结,可以观察算法执行步骤是否有限,算法是否确定可执行,算法的输出是否符合规则来验证算法 2.小组合作:引导学生小组间合作讨论,从算法的特征角度对以下算法进行验证。3.引导学生代表小结,分享验证结果,并说出自己小组验证的过程,其他小组进行补充或指出不足。学生观看视频,思考算法特征的验证角度。交流讨
5、论,分享小结,结合路径问题的算法特征进行算法验证,并分享交流。通过合作探究和交流分享,提升学生对算法特征的认识,掌握算法验证的方法。教学活动二用数据验证算法教师活动学生活动设计意图1.播放视频:引导学生了解用不同的测试数据测试算法的方法。2.动手实践:引导学生打开流程图,输入一组数据,根据流程图逐步自主进行验算,核对结果是否正确。3.教师巡视,指导学生遇到的问题。4.展示部分小组验算结果,引导其说一说验算过程和方法。观看视频了解使用数据进行算法验算的方法。动手实践,输入数据进行验算通过自主探究提升学生对数据验算的掌握,提升学生的计算思维。教学活动三用计算机程序验证算法教师活动学生活动设计意图1
6、. 播放视频:引导学生了解用计算机程序验证算法的方法。2. 实践探究:引导学生打开并运行给定的程序,输入数据,观察运行结果是否正确。3.教师巡视,指导学生遇到的问题。4.展示部分小组验证结果,引导其说一说验证过程和方法。观看视频,掌握计算机程序验证算法的方法。动手实践,通过运行程序验证算法。通过自主探究提升学生对程序验证的掌握,提升学生的计算思维和数字化学习能力。练习请将程序补充完整,验证机器人画正六边形问题的算法。 import turtlem=int(input(请输入正六边形的边长)n=turtle.forward(m)turtle.right(n)turtle.forward(m)tu
7、rtle.right(n)turtle.forward(m)turtle.right(n)turtle.forward(m)turtle.right(n)turtle.forward(m)turtle.right(n)turtle.forward(m)turtle.right(n)turtle.done()教学总结反思1.本课介绍的是算法的三种验证方式,建议在情境创设和任务设计的时候,要让学生体会到算法验证的必要性,引导学生思考如果没有验证这一步,会对解决问题产生什么影响。2.建议在教学中的每一个环节穿插多个生活中的算法描述,让学生在验证中发现算法的不足之处,进而对验证算法的重要性有更深刻的认识。3.建议采用小组合作探究形式,通过“验证算法一发现问题一改进算法”等过程来体验算法验证在算法设计中的重要作用。