《算法初步》的几点认识

(整期优先)网络出版时间:2012-12-22
/ 2

《算法初步》的几点认识

陆云飞

云南省文山州广南县第一中学陆云飞

《算法初步》是高中新课程中的一项新增内容,也是广大数学教师教学中普遍感到比较困难的一章。这是我国以前所有高中数学课本从未有过的.它体现了新教材的时代特点,同时也给广大师生提出了新的问题:

1.什么是算法?在高中教学中实施《算法》一章的教学应注意哪些问题?

2.学习算法应注意什么?

本文结合教学谈谈自己的一点看法。

一、《算法初步》的教学中应注意的几个问题

为了更好地实现新课标的要求,我觉得在实际教学中一定要注意以下几个问题:

1.要正确地定位算法教学

算法初步的教学内容有:算法的含义、程序框图,基本算法语句,算法案例。它们的教学目标具体定位在哪里?通过我们的研究认识到,我们对算法教学目标的定位是从认识一般意义上的算法基础上,着重学习在计算机上可以实现的算法。算法初步中的所研究的算法除了具有算法的基本特点,既具有确定、有效、有限的特征外;教学中围绕着计算机是如何解决问题的,选择数学中具有重要价值的算法范例为内容,如一次方程组的消元法、二分法求方程近似根、迭代求和、比较许多数的大小等等问题,来进行教学。因此,我们算法教学中要从培养学生运用计算机进行思维的素养、体会数学中所孕含的算法思维。在教学中,要实现学生从一般意义上的算法问题转移到运用计算机解决数学问题的算法的学习。

2.要正确地处理好案例学习与解决问题的关系

在算法初步的学习中安排了许多案例,这些案例的算法在计算机应用中所体现的一些数学思想、思维方法都是比较经典、有深度的,同时也是较难以理解的。通过学习使学生能理解它们的算法原理、算法程序设计的技巧,领悟其中的思想与智慧。这里更多的是了解与感受,但并不是要求学生也来解决一些较难的问题。因此,教学中要把握好教学的要求,以理解案例的算法为重点,利用它们解决一些简单的问题。鼓励有兴趣有能力的同学去解决某些具有挑战性的问题。

3.要正确把握学习算法的一些原则

亲和原则--选取的实例要贴近自己,或者来自我们的生活实践,或者我们学过的数学。

趣味性原则--选取的实例一般要有丰富的背景,本身要有趣味性。

基础性原则--问题本身的算理并不难,但要蕴涵丰富的算法思想。

可操作性原则--所选取问题的算法一般能在计算机上实现。

4.在选择结构教学中时要注意纠正学生易犯的错误

学习选择结构时,学生往往因为对计算机的工作的逻辑原理是二进位制,只有是与非二种判断的原理理解不够,在写条件分支的程序设计中常出现多于2个的选择分支的错误。如设计解一元二次方程ax2+bx+c=0(a≠0)的程序中,学生按判别式b2-4ac大于、等于、小于零三种情况来分支写出算法,这在计算机是不能实现的,是错误的,这些在教学时要给予引导或纠正。

5.在循环语句教学中要加深学生对循环的形成与控制的理解

循环语句的学习时,如何能够有效的保证循环,一个关键的地方是设计累加器,在表示时利用计算机特有的替换方式。

在循环过程中对于循环的开始与结束的控制,要给以条件限制,开始学生设计时会遗漏,教学中要引导学生认识它,任何循环都必须给以控制这是循环语句中基本要素之一。

二、学习算法应注意什么?

1.明确算法的概念

而现代意义上的“算法”通常是指可以用计算机来解决的某一类问题的程序或步骤.只要正确的输入原始数据,按操作程序去做就能得出结果(输出相应的数据)可见算法的产生是与计算工具相联系的,不同的计算工具有不同的算法,如算盘有相应的珠算口诀,电子计算机有相应的电子计算机的算法,但由于机器不能直接与人对话,所以必须有相对应的算法语言来作为人机之间的交流使者.人们曾设计出数十种算法语言,并不断改进,使其更接近数学语言,更方便使用,不论哪种算法语言都是由一系列符号和英文字母组成的,但不同的算法语言各有规则,不能混用.一般用计算机解决问题的步骤是:将数学语言写成解题程序——用选定的算法语言写成算法程序——上计算机运算,得出结果——得出问题答案.

2.明确算法的意义

(1)算法学习有助于我们全面的理解运算能力

实际上,按照算法规则进行逻辑推理而获得正确结果仅仅是计算的很小的一方面,更重要的是,在运算中中构造、设计、选择一个合理的算法,理解相应的算理.在算法学习中,我们要让学生给出一个问题的不同算法,并比较这些算法的优劣,并作出选择,从而提高效率,而这个过程才是一个真正的运算过程,因此算法学习使得我们更加全面的理解运算能力.

(2)算法学习能够培养学生的逻辑思维能力

我们常常说数学是思维的体操,能够训练学生的思维能力。算法作为数学的一个基本内容,在培养学生的逻辑思维能力上能够发挥重要的作用.

算法是解题方法的精确描述,算法一方面具有具体化、程序化、机械化的特点,同时又有高度抽象性、概括性和精确性。因此,将解决具体问题的方法整理成算法的过程是一个条理化、精确化和逻辑化的过程,有助于培养学生的逻辑思维能力.

3.明确算法的要素和结构

算法含有两大要素:

一是操作,计算机算法由计算机实现,组成它的操作主要包括:(1)算术运算,即+,-,×,&pide;等;(2)逻辑运算,即与(∧),或(∨),非()等;(3)关系运算,如<,>,≤,≥,=,≠等;(4)函数运算,如ex,lnx,sinx等.

二是控制结构.控制结构的作用是控制算法各操作的执行顺序.一个算法通常由三种基本结构组成,这三种基本结构是:

(1)顺序结构

顺序结构的算法是操作顺序是按照书写顺序执行.

(2)条件结构

条件结构的算法是根据指定的条件进行判断,由判断的结果决定选择执行两条分支路径中的一条。

(3)循环结构

循环结构的算法要根据条件是否满足决定是否继续执行循环体中的操作.

4、明确算法的要求

(1)有明确的规则

用某种算法解决一个问题,是指使用一系列预先指定的运算规则求解这个问题。其中的规则必须是明确可行的,不能含糊不清或不可行.

(2)只能有限次的运算

对于一个算法来说,必须要求在有限的步骤内完成,否则,会因为步骤无限多,而使计算机陷入永无尽头的无穷多次运算,致使无法输出结果.

(3)流向必须唯一

算法从初始步骤开始,每一步只能有一个确定的后继步骤,即流向唯一.否则,将会因为流向多元化而使程序混乱,不能顺利运行.

由此可见,算法初步引入中学数学教学是符合当今我国的教育状况和适应时代发展的要求的,如果仅仅在计算机学科中设置,会得不到应有的普及和重视,现在将其纳入数学教材中,情形就截然不同。从实际的教学中,笔者也感觉到,如果只让学生掌握算法的概念,达到新课标的要求,也并非困难之事!