信息技术选考题与培养学生计算思维
2020-08-10黎韵音
黎韵音
程序设计题作为浙江省高中信息技术选考中的压轴题,题型多变,程序复杂;学生在解题过程中往往因计算思维能力偏弱而难以自主完成解题。由此,在教学中可以采用打基础,体验算法变式、辨析理论,清晰表述思维、上机实践,梳理综合程序、针对练习,促进个人发展的方式,培养学生计算思维能力,进一步提升选考中程序设计题的解题智慧。
体验算法变式
近年来,随着浙江省技术选考的展开,信息技术程序设计题的难度有了显著提升。题目内容涉及数据加密、排序、查找替换等多项综合性问题。在考查学生知识积累的同时,更注重对学生运用已有知识分析及解决问题的计算思维能力的考察。有的学生运用计算思维解题的综合能力偏弱,常出现读题困难、思路混乱等问题,难以运用自主探究的方式高效解题。在此情境下,如何运用恰当的教学模式,进一步培养学生的计算思维能力,实现更有效的学习效果,是当前算法与程序设计教学中亟须解决的问题。
算法与程序设计模块最根本的知识点,在于基础算法实现思想及其代码,基础算法的学习巩固应从算法原理效果开始,到用自然语言描述,再到用流程图设计算法执行流程,最后形成模块化的程序语言算法实现。层层递进,逐步实现计算思维中界定问题、抽象特征、建模处理、分析信息、解决问题的过程。
当然,选考中的程序设计题往往在基础算法的架构上加以变化,例如设置相应变式,或是结合其他算法实现综合性的程序功能,用以考查学生运用已学算法进行综合性解题的能力。此外,根据历年选考题来看,还会涉及拓展提升的各类知识点,例如桶排序、矩阵排列、序列变化等。因而在掌握了基础算法后,还应体验算法变式,拓宽思路,接触更多的知识点与题型,梳理各地市联考卷及选考题中出现的程序设计题中的各类算法思想,比较其中的异同点并体验不同的程序实现方式,加深印象,提升知识梳理能力与计算思维能力。
辨析原理,梳理程序
在学习基础算法及其变式后,需要学以致用,明确该算法的原理、代码及其使用方式,做到熟记于胸。遇见新的程序设计题就要能提取其中的关键点,知道题中大概运用了哪些基础算法,又和哪些已做过的题目有相似之处,程序运行的大概流程是怎样的。学习中,先模仿教师所授思路,按照提示一步步完成解题。在能听懂讲题思路的基础上,慢慢开始提升自主解题能力。
为了更好提升学习参与度,在课堂中可以进行角色互换的学生授课模式。学生在课前通过自主探究、小组合作等方式,理解算法思路以及代碼的由来。在课堂中按照自己的思路对题意及代码进行分析,梳理每一部分代码所对应的功能,并绘图讲演,逐步推导出空格中应该填写的答案。在本题解析之外,还可以根据自己的心得说一说快速解题的技巧。其余学生一起聆听思考,对于不懂之处进行提问。教师在纠正错误的同时,也对学生讲解过程中的优点进行鼓励评价,提升学生自信心。
由于选考中的程序设计题往往是综合性题目,因而在掌握各类基础知识点后,还需要根据程序意思,用多重选择语句、循环语句嵌套等,将各种算法编写在一个程序中。在上机实践课中,可以运用自主探究、小组合作等方式,举一反三,将多种程序功能进行整合重组,培养思维多样性,提升思维能力。
例如,在排序综合算法编写中,可以设计课间操小程序,从数据库中读取学生信息并从中抽取一定量学生,根据身高按照中间高、两边低的方式进行排队。该程序编写过程中,要用到多种常量与变量,涉及赋值、选择、循环等多种语句及多重结构,对于数据进行多样化运算处理,既能检验学生对于数据库的数据读取、排序算法变式和去重随机数等知识技能,又可考察学生将多种功能有机融合在一起的综合解题能力,更能有效提升学生分析问题、运用合理算法、编写相应代码解决问题的计算思维能力。
学习促进个人发展
由于不同学生在知识技能掌握程度和实际应用水平存在一定差异,在课堂共同学习的基础上,根据学生自身情况进行有针对性的练习。程序设计题的练习分为三层。
第一层为基础层,主要是基础算法及其简单应用,难度略低于选考。
第二层为提高层,在第一层的基础上进行提升,主要考查算法的综合性应用,思路相对更复杂,练习难度约为选考难度。
第三层为拓展层,在选考难度上进一步提升,要求根据程序功能,运用已学算法单独编写完整的代码。
学生在完成练习时,首先通过自主探究思考的方式完成。如遇到疑难问题,可以与他人交流探讨或请教老师。如果学生在完成本层次的基础上仍学有余力,则可以继续完成下一层次的练习。分层练习的方式,可以提升学生学习自信心,促进整体发展。
结束语
计算思维的培养和提升是一个循序渐进的过程,因此在教学中,教师还需要根据学生的学情,探究更恰当的方式,将计算思维有效融入教学,潜移默化地引导学生学习探究、实践操作,在真正意义上提升学生运用计算机处理方式界定问题,建立结构模型思想,合理组织数据、分析与综合各种信息资源,运用合理的算法形成解决问题的意识与能力。
(作者单位:浙江省龙游中学)