浅谈在vb教学中培养学生的计算思维

2020-07-06 03:38朱青仙
新教育时代·教师版 2020年9期
关键词:计算思维高中信息技术课堂教学

朱青仙

摘 要:作为三大科学思维之一,计算思维是身处信息时代的我们必须具备的一种思维能力。计算思維也是信息技术学科核心素养之一,是信息技术课堂教学的基本目标之一。本文通过深度挖掘生活中的事例,认真研究教学目标,精心设计教学活动,以案例的形式阐述如何在高中信息技术课堂教学中培养学生的计算思维。

关键词:计算思维 高中信息技术 课堂教学

一、计算思维理论

美籍华人卡内基·梅隆大学计算机科学系主任周以真2011年提出:“计算思维是制定问题及其解决方案所涉及的思想过程,以便解决方案以可由信息处理代理人员有效执行的形式表示”。 [1]

我国的高中信息技术课程标准(2017)指出:计算思维是指个体运用计算机科学领域的思想方法,在形成问题解决方案的过程中产生的一系列思维活动。[2]

为理解和研究的方便,根据高中信息技术教材编排及中学生心理特征、认知水平,本文研究的主要包括抽象思维、选择优化思维、分解和逆向思维。

二、计算思维教学实践

VB是一门理论性、灵活性和创造性较强的课程,VB程序设计语言的编程思路和基本方法又与计算思维存在一定的联系,特别是对编程问题的逻辑分析、算法设计和代码编写尤为突出。如何在课程教学中培养学生的计算思维呢?这就需要我们精心设计案例,从真实案例的具体问题出发,逐步分析抽象出解决问题的办法,形成算法思想,最后利用VB程序设计语言将算法思想转变为代码,进而达到训练思维方法的目的。

1.结合实际生活中的问题培养抽象思维

生活中处处充满智慧,我们从小玩到大的游戏“剪刀、石头、布”,如何让VB来实现,对于这样的问题很多学生感觉到无从下手。实际生活中的问题包含大量的信息,在处理这些问题时,首先需要明确目标,对信息进行过滤,保留需要的信息。这就是抽象与提取的过程。以” 剪刀、石头、布“为例,游戏中我们要比输赢,那么就可以确定为比大小,石头,剪刀,布,分别用1,2,3表示,电脑和玩家的数,用Rnd*3+1来产生,这样问题就抽象成给定两个值,进行比较,最后,落实到编程语句上,要根据实际情况确定两个值的数据类型,比较的过程则对应到选择结构的语法。这个过程是计算思维的本质之一-----自动化。

2.巧用经典案例培养学生的选择优化思维

VB教学中的另一经典问题是“求1到100之内的所以素数”。在教学过程中,先给出问题的描述,让学生积极思考,怎么解决,写出解决思路。然后,通过列出算法步骤,引导学生逐步写出其程序,并对其进行优化求精。

素数是除了1和它本身之外不能被其他数整除的自然数。找不到一个通项公式来表示所有的素数,后来,人们借助于计算机找到了2216091以内的所有素数。

第一步:初步算法。

先解决一个素数的判断问题,引导学生根据素数的概念完成算法设计。求素数的方法有很多种,最简单的方法是根据素数的定义来求解。对于一个自然数m,用大于1小于m的各个自然数都去除m,如何都除不尽,则m为素数,否则m为合数。

第二步:算法优化

第一步设计的算法已经能够完成素数的判断,但分析发现,循环变量i根本不需要循环到m-1,因为当i>m/2时,m已经不可能被i整除,所以,i取值到m/2便可,修改程序如下:

经过修改后,程序的执行效率提高了一倍,但该程序还可以继续优化。分析如下:

对于一个合数m,则一定存在大于1小于m的整数a和b,使得m=a*b成立。

如果a和b均大于sqr(m),则有m=a*b>m,而这是不可能的。

所以,a和b中必有一个小于或等于sqr(m)。对于m来说,循环变量i只需从2试到sqr(m)就可以了。程序修改如下:

通过上面的优化过程,逐步引导学生实现了问题的优化解决,体现了计算机的思维过程。

3.从分析问题中培养学生分解思维和逆向思维

VB中递归算法是比较抽象,如果直接给出定义学生肯定难以接受。在教学中以日常生活中的事例为导入,创设情境,让学生去分析,从而寻找规律,得出结论。

通常把一个大型复杂的问题通过“递推公式(也叫递归方程)”层层转化为一个与原问题相同或相似的但规模更小的问题来求解。当通过反复的调用,把问题的规模小到一定程度时,必须能直接给出问题的解,即有明确的结束递归的边界条件(也叫递归出口)。

现在我们已经知道递归的两大要素,那么递归的具体过程又是怎样?由此引出递归的两个阶段:递推阶段和回归阶段。

将原问题不断地分解为新的子问题,逐渐从未知地向已知的方向推进,最终达到已知的条件,即结束递归的边界条件,这时递推阶段结束。接着从已知条件出发,按照“递推”的逆过程,逐一求值回归,最终到达“递推”的开始处,结束回归阶段,完成递归调用。

结语

传统的VB教学中,以教师活动为中心,以知识店讲解为主线,过于强调编程语言本身的完整性和系统性,忽略了抽象、分解、自动化等计算思维特征在教学过程中的渗透,缺少算法分析于设计过程的积极引导。

总而言之,在计算思维核心素养下,创造性地使用教材,深度挖掘教学内容,洞察学生内心想法,精心设计教学活动,改革教学方法,将培养计算思维落到实处。

参考文献

[1]唐芳.案例教学法与任务驱动教学法的比较[J].顺德职业技术学院学报,2011(10)

[2]任友群.高中信息技术课程标准解读[M].北京:高等教育出版社,2017.3:10.

[3]张静.邬恩杰.基于计算思维能力培养的《程序设计基础》课程教学探讨[j].软件导刊.2018(08).

猜你喜欢
计算思维高中信息技术课堂教学
高中信息技术探究式教学的实践与思考
提升信息技术实践能力,促进学生全面发展
程序设计课程中计算思维和应用能力培养问题研究
民族高校C语言程序设计课程教学改革的研究
算法的案例教学探析
浅谈艺术专业学生计算思维能力的培养
且行且思,让批注式阅读融入课堂教学
对初中化学课堂教学的几点思考
初中历史课堂教学的导入法
把“三个倡导”融入课堂教学