APP下载

小学信息科技教学中计算思维的培养
——以图形化编程《猜数字》一课为例

2022-11-19马富泰辽宁省大连市甘井子区红旗中心小学

中国信息技术教育 2022年22期
关键词:流程图程序解决问题

马富泰 辽宁省大连市甘井子区红旗中心小学

《义务教育信息科技课程标准(2022年版)》(以下简称“新课标”)中将计算思维列为四大核心素养之一。其对计算思维的描述是:个体运用计算机科学领域的思想方法,在问题解决过程中涉及的抽象、分解、建模、算法设计等思维活动。那么,如何在小学信息科技教学中培养学生的计算思维呢?计算思维中的抽象、分解、算法、验证、优化、迁移等要素又是如何在教学中体现的呢?下面,笔者以小学五年级图形化编程《猜数字》一课为例,具体阐述。

● 模拟生活情境,提出问题

新课标指出,学校应模拟真实的生活场景,让学生在场景中解决问题,并能够由此迁移到未来生活之中。模拟情境能够充分调动学生学习的主动性和积极性,让每个学生都主动参与到学习中去,为计算思维的培养奠定良好的基础。

教师提问:“同学们,你们有没有玩过‘猜数字’的游戏?谁愿意给大家表演一下?”教师邀请表演者A、B、C,他们各自的任务如下。A:先在纸上写一个只有自己知道的1~100以内的整数,并说出猜数者的结果是大了、小了还是对了;B:根据A的提示在1~100之间猜数;C:在黑板上记录B猜了几次,如果达到限定的10次,说出提示语“很遗憾,下次继续努力”。第一轮猜数的学生猜数时没有技巧,以失败告终。第二轮学生使用了猜数技巧,挑战成功!教师顺势提出本节课的问题:能不能用程序编写一个猜数字的程序?

● 合作探究,抽象并分解问题

计算思维中的抽象是指将现实中的对象转为计算机可以处理的对象,将一个现实问题转变为计算机可以处理的问题。本课中,如何将“猜数”转变为计算机可以处理的对象就是计算思维中的“抽象”。

课堂中,笔者采用的方法是先让学生说一说表演的哪一部分可以用编程中的命令来实现。学生自然而然地将大部分的对象转变为程序中的命令,个别难以抽象的问题,教师可以让学生合作探究,这样更有利于计算思维的培养。

在抽象的过程中如果遇到很复杂的问题,教师可以引导学生对问题进行分解。计算思维中的分解是指将一个复杂的大问题分解为若干个易于解决和实现的小问题。本节课中的“四次判断”对于刚升入五年级的学生来说比较难,教师可以在黑板上用图示法将此问题分解(如图1),这样不但解决了难点,理顺了逻辑顺序,而且为进一步提炼算法打下了基础。

● 设计算法,验证优化

算法是解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制,是计算思维的核心要素之一。小学阶段主要是让学生了解日常生活中的算法,知道任何一个问题都有不同的解决方案,并能根据实际需要选择最优方案。如何用程序来描述“猜数字”的过程?经过一系列的抽象与分解,学生初步明确了如何编写程序。由于学生的思维水平不尽相同,编程中难免会出现各种各样的问题,此时教师不要急于提供答案,可以新课标“素养导向”为引领,采用小组合作探究、观察流程图(如图2)、补充流程图、绘制流程图等方法,促进学生的计算思维进一步发展。

验证优化是培养计算思维不可或缺的重要环节。新课标指出,具备计算思维的学生,能够尝试模拟、仿真、验证解决问题的过程,反思、优化解决问题的方案。由于思维的惯性,学生很难检查出哪个命令或哪一部分程序有问题。笔者给出的验证方法是:显示变量a,在知道答案的前提下逐一验证程序中的四次判断;请同组学生帮忙测试;与流程图对照检验等。通过多种方法验证,学生找出了自己的错误,不但完善了程序的设计,而且促进了计算思维的发展。

● 逆向推理,理解算理

学生通过不断尝试后发现用“减半法”猜数最快,既然用“减半法”猜数字很快,那么计算机程序又是如何运用“二分查找”法来猜数字的呢?逆向推理对学生的计算思维有了更高的要求,在推理验证的过程中不但探究了“二分查找”算法的算理,而且更好地培养了学生的计算思维。

课堂上,教师先演示“二分查找”法的猜数程序,让学生感知其查找过程,激发求知欲。在教学算理的过程中,教师让10位学生用1~10的数字卡片模拟二分查找过程,即先将计算思维形象化,再将直观形象的表演进行抽象概括,从而培养学生的计算思维向更深层次发展。10张卡片按序排列(说明二分查找的前提是一组有序数列),先查找哪个数?数字5是如何计算出来的呢?讨论后得出结论:中间数=向下取整([最小数+最大数)/2]。找到中间数后在卡片上做个标记,将中间数与目标数进行比较,判断是“大了”“小了”还是“对了”。如果“小了”,那么就将1~5的卡片放下,表示排查出一半;接着查找剩下部分的中间数,这时最小数的变量发生了变化(最小数=最小数+1),再次计算中间数后,同样做标记,同样排查出一半。如果“大了”,最大数的变量发生了变化(最大数=最大数-1)。以此类推。最后,教师让学生把标记过的中间数举起来,进行算理总结:二分查找就是通过不断地查找中间数,用中间数与目标数进行比较判断,从而逐步缩小范围,直到“中间数=目标数”查找成功为止。有了算理的支持,再加上教师准备的教学支架,程序验证“二分查找”就迎刃而解了。

● 拓展应用,有效迁移

新课标指出,具备计算思维的学生能将验证、优化后的解题方案迁移运用于解决其他问题。本节课可以通过练习环节引导学生将所学知识应用到学习生活中,笔者设计了三道知识迁移练习题(如图3)。

教师还可以引导学生将本节课的某一个知识点迁移到其他程序编写中。例如,“回答”与“变量”的比较,这种命令就广泛地应用于“密码验证”“100以内加减法”“知识问答”等程序中。课堂上教师要充分挖掘可迁移的知识点,积极促进学生知识的有效迁移。

猜你喜欢

流程图程序解决问题
云的识别指南
联系实际 解决问题
助农解决问题增收致富
给Windows添加程序快速切换栏
解决问题的设计
面对面沟通交流 实打实解决问题
试论我国未决羁押程序的立法完善
一种程序源代码的标准化流程图转化方法∗
“程序猿”的生活什么样
英国与欧盟正式启动“离婚”程序程序