APP下载

基于理解性教学的信息技术教学案例研究

2022-04-10陈鹏

速读·上旬 2022年2期
关键词:算法优化信息技术

陈鹏

◆摘  要:枚举算法是计算机批量处理数据的重要方式,也是计算机效率远超人力的体现,是python基础课程中难度的一大跨度,同样也是整个高中信息技术python算法的重要组成部分。枚举算法中优化枚举算法的策略,是计算思维的核心思想。本文主要研究基于理解性学学习的高中信息技术教学。第一部分简要的从实际问题入手,介绍枚举算法设计的一般过程、核心要素、优点缺点,理解和体验枚举算法的意义。第二部分是以实例演示并实践分析枚举算法,从解决实际问题的层面去理解和初步应用枚举算法。第三部分是基于理解性教学的课程评价。本文主要基于理解性教学的教学理念,分享新教材枚举算法教学的启示和本次研究的创新之处。

◆关键词:信息技术;理解性教学

在信息技术学习中,实践无疑是最好的老师,为了提高实践效率,必须先做好理解性教学。理解性教学是一种新兴的教学方式,它反映了人们把所呈材料应用到新情境中的能力,其核心在于要求学习者根据已有的经验或知识对新信息或知识的解释、举例、联系、比较、建构等。目前,理解性教学的理论已经逐步成熟,但其中大部分理论与第一线的实际教学相脱节,缺乏可操作性。为此,我以《枚举算法》这节课为例,对理解性教学在高中信息技术课堂中的应用进行了实践探索。

《枚举算法》是《python程序基础》课程模块的重要组成部分。本次教学案例运用“信息技术理解性教学模式”,在学习枚举算法的同时,更加注重对学生理解能力和计算思维能力的培养。下面从教学目标、教学实施、教学评价方面来讲述。

一、確定教学目标

根据信息技术新教材、新课标,结合普通高中学生的学情,我设计了以下教学目标:

1.认识枚举算法的概念,归纳枚举算法的三要素以及优缺点,能举例说明枚举算法在生活中的应用实例。

2.围绕“马克思手稿”这一主线,掌握枚举算法求解问题的基本过程,掌握缩小枚举范围的优化思想。

3.通过用枚举算法解决实际问题的实践,培养学生的计算思维以及对信息技术学科的兴趣。

针对以上的教学目标,本节课我们主要需要思考以下一些基本问题:

(1)什么生活案例可以直观体现枚举算法的核心价值?

(2)什么样的学习活动能促进理解,循序渐进,深入理解?

(3)什么样的实践可以增进知识和技能,激发兴趣?

我们预期学生将会理解:

(1)枚举算法的基本结构、应用领域;

(2)算法的优化是无止境的;

(3)枚举算法对日常生活来说真的很实用。

二、探索实践理解性教学的教学设计

1.举例思考枚举算法的概念和意义,首先解决“为什么要学”的问题

我们在之前“循环程序结构”中学习过,循环结构可以代替人力去解决重复度极高的任务,那么生活中有哪些类似的实际问题可以通过循环结构非常方便地求解呢?带着这个问题,我们来开始探讨。

通过教师的引导,我们进行举例和归纳。通过生活中的密码问题、毒药问题等,我们可以归纳出枚举算法的概念:将问题的所有可能的解一一列举,判断每一个列举的可能解是否为正确的解。

以“鸡兔同笼”为例,通过对比解析算法,总结出枚举算法的特点:枚举算法的思维方式更简单,更容易实现,它暴力的判断了所有可能性,几乎能保证百分百的正确率。但是枚举算法的速度可能很慢,就算借助计算机技术,也需要一定程度的优化算法。

为了让学生更容易将实际问题的枚举算法与程序语言对接,将理论转化为实际应用,教师提出枚举算法三要素,一起探究每一个枚举问题中出现的枚举范围、枚举对象、判断条件,与程序中的循环序列、循环变量、条件表达式相对应,更容易分析。通过这一系列的抽象建模过程,学生对枚举算法的程序设计就有了一定知识基础。

2.围绕“马克思手稿”这一主线,编写程序,掌握枚举算法的应用,培养优化枚举算法的思想

马克思手稿:有男人、女人、小孩共30人,吃饭共花了50元;每个男人花3元,每个女人花2元,每个小孩花1元;问男人、女人和小孩各有几人?

以马克思手稿趣味数学问题为例,教师引导学生进行抽象建模和编写程序。我们将问题解决过程按照枚举范围的不同分为三个层次:

暴力枚举。首先,引导学生完成最直观的抽象建模,设计变量男人x、女人y、小孩z,初步划分各变量的范围,利用三重循环实现枚举。这是最简单实现、最直观的枚举法。它既突出了计算机超高运算速度的优越性,也体现了枚举算法的核心特点:枚举所有可能性。暴力枚举的速度太慢,在列举时有可以提前排除的情况,因此可以优化。

减少枚举范围以及枚举对象。第二步,引导学生利用数学知识,通过公式x+y+z=30缩小变量枚举范围,将小孩z用30-x-y的公式代替,减少了枚举对象。

优化。枚举算法还能优化吗?教师引导学生展开讨论,对枚举范围和枚举变量是否还能减少。通过x+y+z=30和3x+2y+z=5方程相减,得到2x+y=20,可确定x的范围可缩小为[0,10],y的范围可缩小为[0,20],进一步缩小循环变量的范围,提高枚举算法的效率。通过对同一算法的多次优化实践,学生建构起枚举算法优化的一般过程,感受到算法优化的乐趣。

3.实践与拓展

信息技术作为一门技术课程,只有通过实际操作和反复练习,才能掌握和巩固新的知识。

通过刚才的学习,我们对枚举算法的编写和优化已经有了较多认识。最后,以“孔雀开屏数”为题,教师引导学生体验抽象建模的过程,同时,学生以本节课掌握的知识为基础,设计算法、编写程序、讨论算法的优化,在这一过程中,学生相互讨论、交流感受,比赛谁的算法最简洁、最效率。

三、理解性教学的评价标准

本节课既是重要的算法进阶课,又是对之前所学的python语句语法、控制结构、解析算法的综合运用,根据课前调查,学生会将枚举算法与循环结构画上等号,其主要原因是:学生对枚举算法的特点不熟悉,难以区分枚举算法和普通的循环结构有什么区别;作为课堂教学的主体,大多学生自主探究能力、联系和应用已有经验的能力有所欠缺,很难深入去归纳新的知识,需要教师适当引导。本节课采用“理解性教学模式”,将教学内容与学生实际情况紧密结合,对教学内容进行有效的开拓处理,让每一个学生都成为“主角”。

基于对“理解”的认识,在阐明什么内容可以证明理解的基础上,针对本节课三个教学目标,我设计了两种“理解性教学”评价标准:

解释。目前课堂上,对于学生掌握的理论知识,教师采取的评价准备往往是填空、选择题,缺乏了对学生建构知识、理解知识的锻炼。本节课针对枚举算法的概念、三要素等理论,我们首先引导学生举例现实问题、联系以往循环结构的知识、归纳枚举特点,然后让学生用自己的话说出自己理解的枚举算法,其中包括“是什么,为什么和怎么用”这一类问题。学生只有经过自身对知识的建构,实现知识的迁移,才能更容易灵活应用于实际问题。

应用。在上一阶段完成解释枚举算法的前提下,本阶段要求学生把所学的知识有效地应用于新颖和变式的情境中。传统课堂上,枚举算法的学习往往只要求学生能掌握跟踪变量、读懂算法,完全以解题作为课堂目标。接受这样的学习,学生根本无法独立写出完整的代码。本节课针对枚举算法的应用,通过步步引导学生抽象建模、优化算法,要求学生熟练掌握枚举算法的知识,透彻地了解如何运用这些知识解决实际问题,最终写出“马克思手稿”题解的代码,并逐步优化。

理解性的“应用”还要求学生把知识与具体情境相结合,对知识进行创新。因此本节课设计了拓展任务“孔雀开屏数”,让学生能从多个视角,运用枚举算法解决难题,这种灵活运用的能力正是理解性应用中所不可或缺的能力。学生只有表现出对枚举算法的重构和再创造,这样的应用才是自发性的、理解性的。

传统高中信息技术教学的教学内容缺乏深度和广度,如今新课程改革,在新课标的要求下,教师充分地认识到教学必须要超越理论知识、操作技能,追求理解性教学成为高中信息技术教师的教学理念。本文旨在以“枚举算法”为例,为提高高中信息技术理解性教学的效果贡献一点小小的力量。

参考文献

[1]何烨,盛群力.理解的六种维度观——知识理解的新视角[G].全球教育展望,2006.35(07):27-29

[2]潘旭東.为理解而教——对理解性学习的基本认识[G].小学教学参考,2017(23):1-4

[3]张益军.例谈高中信息技术理解性教学实践[G].中国信息技术教育,2013(12):46-47,88

猜你喜欢

算法优化信息技术
幼儿园教学活动中信息技术的应用思考
巧学信息技术课程
浅谈初中信息技术项目式学习教改实践
营商环境五方面持续优化
巧用“信息技术”,提高课堂效率
Travellng thg World Full—time for Rree
优化英语课堂教学策略的探索
促进学生认识发展 优化初中化学复习
学习算法的“三种境界”
算法框图的补全