培养计算思维的信息科技课程教学策略

2023-11-21 12:47江苏徐州市铜山区黄集实验小学221100
小学教学参考 2023年27期
关键词:解决问题编码算法

江苏徐州市铜山区黄集实验小学(221100) 权 慧

计算思维是运用计算机科学的基础概念进行问题求解、系统设计以及人类行为理解等涵盖计算机科学之广度的一系列思维活动。具备计算思维的学生,能尝试模拟、仿真、验证解决问题的过程,反思、优化解决问题的方案,并将其迁移运用于解决其他问题中。计算思维与我们的生活息息相关,是信息社会不可或缺的一种能力。2022 年,随着《义务教育信息科技课程标准(2022 年版)》(以下简称“信息科技新课标”)的颁布和实施,作为小学信息科技学科的核心素养之一的计算思维,引起了教师的重视。以下是笔者对培养学生的计算思维的教学策略探索。

一、开展趣味活动

在信息社会中,学生身边存在大量的数据信息。这些数据除了数字、数值,还包括依托数字设备制作出的文本、图像、音频、视频等,如各种二维码、身份证号码、学号、电话号码、车牌号码等。我们每天都要和数据打交道,学生也不例外。引导学生关注并理解这些数据所代表的信息、数据的编码和解码规则、使用数字化表达的优势以及现实世界与虚拟世界的联通方式等,对学生计算思维的培养具有重要意义。

在信息科技新课标中,数据与编码模块是三、四年级的学习内容。这个阶段的学生处于形象思维阶段,教师可以引导学生使用电子设备体验各种数据,了解其背后的信息;还可以开展趣味活动(如设计个性二维码等),让学生学习编码规则,尝试创编自己的二维码或图形码,并且理解计算机编码、解码、校验的原理。这项活动是在学生已经了解数据的类型、理解编码的意义、明确编码的规则的基础上设计的。教师可以利用生活中常见的二维码导入新课,通过展示各种黑白方块组合成的不同二维码图形,引发学生思考:它们真的能表达信息吗?能表达多少种信息呢?教师进一步展示并总结二维矩阵表达信息的方式和数量,组织学生通过最简单的二维矩阵来设计二维码。学生完成作品进行展示时,大家发现有很多二维码是相同的,教师此时可以进一步引导学生进行讨论交流,共同探讨编制个性二维码的方法。学生在讨论中理解了矩阵的维度和所代表的信息量之间的关系,学会了运用一定的编码规则组织和表达信息,学会了合理使用字符、图像编码表示信息,并且在交流学习中碰撞了思维,提高了语言表达能力,计算思维得到有效培养。

周以真教授说:“计算思维就是像一个计算机科学家一样思考。”在小学阶段,教师也可以引导学生“像一个计算机科学家一样思考”。教师通过形式多样的趣味活动,引导学生体验、合作、交流,让学生了解数据的存在方式、编码和解码的基本规则、编码规模和包含信息量之间的关系、现实世界和虚拟世界连接的方式等,利用真实的场景体验,感受编码和校验的必要性,拓宽学生思考的广度和深度。

二、利用图形化编程软件

Scratch 是美国麻省理工学院专门为儿童设计的一款图形化编程软件。它不需要儿童编写代码,而是将代码集成一条条积木,让儿童在搭建积木的过程中解决问题。这款软件的作用不是教学编程语言,而是让儿童在编写程序的过程中,体验将现实世界的问题抽象为计算机能够解决的问题的步骤,通过抽象、编码、检测、反馈等过程,锻炼思维能力,收获成就感。笔者抓住学生创作作品的前、中、后三个关键环节,通过不同类型的图形化编程作品培养学生的思维能力。

1.创作前:学会规划

以苏科版小学信息技术教材五年级的《火柴人跳舞》一课为例,该课的内容是先把真实人物不同的舞蹈形象抽象化,形成火柴人角色,再通过代码控制火柴人切换不同的造型,让火柴人动起来。这一教学内容引发了学生的兴趣,促使学生激活自己的创造力,在短时间内创作出很多不同的火柴人造型。但是对于刚接触Scratch 的学生来说,角色和造型的概念容易混淆,绘制造型的过程中角色的大小、锚点的位置难以准确辨析。在传统的教学模式中,教师会在学生动手操作前将所有问题一一讲解,这剥夺了学生发现问题的机会,使学生难以独立思考问题。对此,教师可以创新教学模式,在作品创作前给学生提供充足的时间,让学生以小组为单位展开讨论,分析问题、建立模型、设计方法、预测结果。学生在交流的过程中会发现,不同的火柴人造型可以被制作成不同的角色,而同一个角色也可以制作成不同的火柴人造型。学生阐述不同的观点后,教师组织学生动手实践:将火柴人制作成不同角色。但是在操作过程中,学生发现添加代码后角色无法动起来。此时,教师可以引导学生先在小组内交流讨论或翻看教材查明原因,遇到无法解决的难题时再求助教师。最终师生共同解决了问题,明确了让角色动起来的原理,创作出个性化的火柴人跳舞动画。在这一学习活动中,学生在动手操作前用语言描述创作过程,清晰地规划整个创作活动,自上而下地整体设计作品,运用系统的方法思考问题,经历了一系列的思维活动。虽然学生对创作的规划仍存在许多问题,但是学生在处理这些问题的过程中碰撞出了思维的火花,进一步获得了发现问题、解决问题的乐趣。

2.创作中:设计算法

在使用Scratch 进行创作的过程中,需要考虑作品界面布局的美观性、故事的合理性、算法的复杂性、操作的便捷性等。其中最为关键的部分就是算法。学生要利用算法解决问题,需要经历分析问题、设计算法、验证算法、优化算法的过程。学生可以先通过自然语言或者流程图等方式,描述解决问题的步骤,再将其转化为计算机可以执行的命令。

在信息科技新课标中,算法属于五、六年级的学习内容。这个阶段的学生处于形象思维向抽象思维过渡的阶段,因此教师要把握良好的教学时机,引导学生通过合理的算法来解决问题。比如,“鸡兔同笼”问题,学生先在小组内讨论解决问题的方法,如假设法、抬脚法、列表法、方程法等,然后进行语言描述,最后设计算法。以假设法为例,学生先用自然语言描述:假设给定的头的数量a都是鸡,脚的数量应为2a,那么与给定的脚的数量b进行比较,兔子的数量n即为多出的脚的数量除以二,表达式为(b-2a)/2,鸡的数量m就是a-n;然后,通过Scratch 进行程序编写:确定输入值为头和脚的数量,输出值为鸡和兔的数量,计算公式为n=(b-2a)/2,m=a-n。在验证算法阶段,需要注意脚的数量有一定的限制,即必须是在头的两倍和四倍之间的偶数,否则就无法得出正确结果。因此,教师要引导学生在优化算法阶段添加数据的取值范围,使算法更加合理、完善。这样,学生通过设计算法成功地解决了实际问题。

3.创作后:优化算法

计算机科学家善于优化算法,教师要培养学生优化算法的能力。上文提到“鸡兔同笼”问题有多种不同的解法,由此会产生不同的算法和不同的程序。因此,教师可以引导学生从计算时间、计算效率、代码长度等方面加以分析,让学生认识到不同的解题思路会产生不同的算法,由不同的算法会产生不同的时间复杂度和空间复杂度,进而影响到计算机的反应速度、运行速度和能量消耗。学生了解了计算机解决问题的原理后,就会从全局角度思考解决问题的方法,并且不断尝试寻找多种方法,从中选择最优算法。掌握了这种思维方式,学生在以后遇到问题时,就能够全面地思考问题。如此一来,学生思维的多样性得到拓展,解决问题的能力得到提高,计算思维真正内化为学生的基本能力。

三、促进学科延伸

有效运用计算思维是求解问题的一条途径,它的本质是抽象和自动化两个部分。作为“数字原住民”的小学生,生来就可以使用具有强大计算能力的计算机。根据小学生计算能力有限的特点,教师要善于引导学生借助计算机解决具体问题。

如经典的数学问题“百钱买百鸡”,通常需要利用解方程或列举的方式解题。对于小学生而言,要列出含有三个未知数的方程有一定难度,列举有几千种可能的过程又异常繁琐,容易产生畏难心理。怎样利用计算机来帮忙呢?首先,对问题进行抽象分解。已知条件:公鸡5元1只、母鸡3元1只、小鸡1 元3 只。求解目标:用100 元买100 只鸡,而且3种鸡都要有,算出所有买法。其次,引导学生建立数学模型,设计算法(见表1)。最后,学生在理解数据间的逻辑关系的基础上,尝试根据数学模型进行积木搭建,实现数据的自动计算。

在求解的过程中,学生不仅要利用数学思维厘清公鸡、母鸡、小鸡三者之间的价格和数量关系,还要利用编程思维处理好变量累加的递归算法与重复执行的循环算法之间的关系。最重要的是,当学生的计算能力达不到解题的要求时,学生能够通过分析问题、创建模型、编写代码等方式,利用计算机解决问题。这样,他们的思维就得到了拓展。

掌握了运用计算机解决问题的方法后,数学学科的很多问题如“韩信点兵”“汉诺塔”等,都可以迎刃而解。数学思维强调严谨的态度、数与形的逻辑关系和演算推理能力,而计算思维强调问题求解的操作过程、机器的实现结果。以上利用计算机解决问题的过程,就是计算思维在数学思维的基础上,进一步精确地编写程序,确保计算机能够自动执行并完成任务。教师要促进学科延伸,融合学科之间的思维链接点,提升学生的思维能力。

四、引入生活问题

怀特海说:“教育只有一个主题,那就是丰富多彩的生活本身。”生活中的真实问题符合学生的现有认知,有利于调动学生的积极性、主动性,让学生主动参与学习活动。如通过快递收费计算系统这个项目,带领学生设计、制作程序,引导学生对比不同快递的收费和时效之间的关系,让学生关注生活、发现生活、热爱生活。

本案例是在学生掌握了引用变量进行计算的基础上,结合生活中的真实问题设计的一个综合项目。网络购物已经广泛普及,“快递”这一名词对学生来说并不陌生。寄快递可以自由选择不同的快递公司,本项目引入“你要寄一份家乡特产给远在北京的朋友,你会选择哪家快递公司?请说出你的理由”的生活情境,并且提供市场上四家快递公司的收费标准和快递到达时限等信息,引导学生通过分析问题、抽象建模、程序设计等过程,制作出快递收费计算系统:只需要输入物品的重量,就能够自动输出快递的收费价格和快递的到达时间。学生观察该系统呈现的数据后发现,有的快递公司能够实现快递隔日到达,但是收费较高;有的快递公司收费较低,但是运送的时间较长。因此,学生根据自己的资金情况和特产的保存时效选择了相应的快递公司。

本项目通过“快递”这一生活中常见的事物导入教学,能够拉近学习与生活的联系,引发学生的好奇心和求知欲,让学生主动参与到学习活动中来,提升解决实际问题的能力。经过本次学习实践后,学生能够帮助家长邮寄物品,以此收获成就感。类似的教学项目还有班干部投票系统、垃圾分类系统等,教师可以通过生活中的真实问题,创设真实情境,提高学生的学习参与度,培养学生的计算思维。

在信息科技教学中培养学生的计算思维,是一个循序渐进的过程,也是一个不断内化所学知识的过程。教师可以尝试用微专题去解决大问题,从小的项目入手引导学生体验解决问题的一般步骤,逐渐将计算思维内化为学生的一种基本能力。处于信息时代的学生具有独特的时代印记,出生在数字时代的他们是“数字原住民”,拥有良好的计算机资源。因此,教师要转变思想,创新教学模式,开展贴近学生真实生活的学习活动,培养学生的计算思维能力,提升学生的信息科技核心素养。

猜你喜欢
解决问题编码算法
联系实际 解决问题
助农解决问题增收致富
在解决问题中理解整式
基于SAR-SIFT和快速稀疏编码的合成孔径雷达图像配准
《全元诗》未编码疑难字考辨十五则
子带编码在图像压缩编码中的应用
基于MapReduce的改进Eclat算法
Travellng thg World Full—time for Rree
进位加法的两种算法
Genome and healthcare