《算法的验证》教学设计 一、教学内容分析 《算法验证》是浙教版五年级上册第三单元“用算法解决问题”第五模块内容,在前四课已经介绍了设计算法的一般过程,学生能够将问题分解、抽象、建模并设计算法。本课主要讲解算法验证的三种方式,第一部分安排“根据算法特征验证”,旨在让学生通过对流程图的观察,回忆算法特征、变量值的变化过程,熟练运用流程图描述算法,确保算法的描述是有效的。第二部分“用数据验证算法”,根据算法能够通过部分测试数据,让学生感受算法验证的作用和重要性,能将具体数据代入流程图并逐步计算得到结果。第三部分“用计算机程序验证算法”,让学生通过修改、编写程序等方式体验程序验证算法的优势。 二、学习对象分析 从问题的分解、抽象、算法的设计到验证,是一个将形式化的描述方式转变为可以实现的结果。从学生的认知发展角度来看,需要将推演结果转变为编程的预测结果,然后执行程序验证结果。虽然五年级学生已经有图形化编程基础,了解了变量、三种程序结构等,但是在掌握python程序语言上还是存在一定困难,因此本节课尝试搭建支架,为学生提供半成品程序,引导学生修改参数、记录结果、观察数据、发现规律。 三、教学目标 1.具有主动跟踪和分析量值变化的意识。 2.掌握用算法特征、数据验证及程序验证算法的方法;通过算法验证,初步形成模拟、验证解决问题的思维;认识到解决同一问题有不同算法,算法效率和算法本身、问题规模都有关系。 3.能用数字化流程图描述累加求和的算法。 4.认识到不同算法验证方式的价值和局限性,将其灵活迁移运用到学习和生活中。。 教学重点:掌握用算法特征、数据验证及程序验证算法的方法。 教学难点:掌握用数据验证算法的方法。 四、方法策略 本课以“数学王子解题”为教学情境,主要采用任务驱动教学法,辅以小组合作探究,以及学生的自主学习逐步展开。以“用计算机解决问题的一般过程”为线索,引导学生分析问题、设计算法、验证算法。通过确定“求和式子规律”为关键问题,切割、分解、细化、完善整个流程图,抽象出顺序、分支结构,并蕴含分支嵌套概念,从而形成问题分解的思维,渗透“分而治之”的思想。 五、教学流程 (一)情景导入 教学内容与活动 设计意图 1.设疑提问 德国“数学王子”高斯三岁时便能纠正父亲的借债账目。十岁时,他的老师布纳特出了一道算数题:求1到100所有整数的和,老师刚叙述完,高斯就算出了正确答案。同学们知道高斯是怎么算的吗?你们会怎么计算?能设计算法并验证吗? 回答:5050,首尾配对…… 2.板书标题:算法验证 数学中的求和运算是学生熟悉的问题,不会给学生造成太大认知障碍。另一方面,布纳特老师的数学难题也能激发学生的兴趣 (二)任务驱动,分析问题 教学内容与活动 设计意图 1.感知算法 探究:尝试先设计“求1+2+3+4+5和”的算法。在用i表示某个数,sum表示和的情况下,观察相邻累加求和的过程,你有什么发现? 总结:数每次增加1,和是在上一步的基础上增加新的数,可以表示为sum=sum+i,i=i+1 2.用算法特征验证算法 完型:在希沃课件中补全“求1+2+3+4+5和”算法流程图 提问:观察流程图,一共有几步?步骤有限吗?每一步可以确定执行吗?有输出吗?输出符合规定吗? 总结:用算法特征验证算法可以从算法有限性、确定性和有输出三个角度实施。 拓展:算一算高斯的方法和累加求和两种算法的步骤。 3.用数据验证算法 代数:修改流程图中条件为“i<=6”,逐步写出每一步结果。 进入时i的值 每一步结果i=1sum=0+1=1i=i+1=2i=2 总结:用数据验证算法需要代入具体数据,逐步分析计算结果,从而验证算法是否存在问题。 提问:如果验证的数据很大(比如要求1+2+……+1000)怎么办? 4.程序验证 人工测试 ... ...
~~ 您好,已阅读到文档的结尾了 ~~