如何理解算法进入中学数学内容的必要性

如题所述

算法在科学研究中具有普遍意义.解决科学研究中的问题需要一定的方法,但"方法"这一概念含义广泛而不具体,而算法与一般方法相比,则更具体、更精确,因为它是能行的、可操作的.能解决某个科学上的问题,实质上就是意味着掌握了或找到了某种算法.某一问题的可解性意味着能够找到一个适当的算法,而某一问题的不可解性则意味着不可能找到一个适当的算法,或证明这样的算法不存在.在科学史上,很多研究工作的任务和目的,就是要寻找解决某个问题的算法.
在新高中数学课程标准中,我们注意到算法作为必修部分进入了中学数学.标准中写到:“算法是一个全新的课题,已经成为计算机科学的核心,它在科学技术和社会发展中起着越来越重要的作用.算法的思想和初步知识,也正在成为普通公民的常识.在必修课程中学习算法的基本思想和初步知识,算法思想将贯穿高中数学课程的相关部分.”可是,到底算法引进中学的意义是什么?本文
算法学习的意义
“计算机既是数学的创造物,又是数学的创造者”,而算法既是计算机理论和实践的核心,也是数学的最基本内容之一.甚至有人说,数学学习的主要作用是形成“算法思维”.算法有着悠久的发展历史,中国古代数学曾经以算法为特色,取得了举世瞩目的辉煌成就.在已经逐步进入信息化社会的今天,算法的基本知识、方法、思想日益融入人们社会生活的方方面面,已经也应该成为现代人所应具备的一种基本素质.
我们认为学生学习算法有以下几个方面的意义:
算法学习有助于我们全面的理解运算能力
很多时候,人们对运算存在一些误解,认为运算就是按照各种运算法则进行加、减、乘、除,从而学习运算就是背诵书本中给出的计算法则,形成一些基本的计算技巧,也就是说,能够根据熟记的法则,迅速的计算给定式子的正确答案.
实际上,按照算法规则进行逻辑推理而获得正确结果仅仅是计算的很小的一个方面,更重要的是,在运算中构造、设计、选择一个合理的,算法理解相应的算理.在算法学习中,我们要让学生给出一个问题的不同算法,并比较这些算法的优劣,并作出选择,从而提高效率,而这个过程才是一个真正的运算过程,因此算法学习使得我们更加全面的理解运算能力.
算法学习能够培养学生的逻辑思维能力
我们常常说数学是思维的体操,能够训练学生的思维能力.算法作为数学的一个基本内容,在培养学生的逻辑思维能力上能够发挥重要的作用.
算法是解题方法的精确描述.算法一方面具有具体化、程序化、机械化的特点,同时又有高度抽象性、概括性和精确性.因此,将解决具体问题的方法整理成算法的过程是一个条理化,精确化和逻辑化的过程,有助于培养学生的逻辑思维能力.
我们学过一元一次方程的求解,任意给一个一元一次方程,比如说
3 x + 5 = 0
我们都会解这样的方程.它的解是
x = - 5/ 3.
我们说计算机能够帮助人完成很多工作.但是计算机毕竟和人脑有着本质的区别,它是机械的,在没有的指令的情况下,它是不会思维的,不能进行任何判断.算法是连接人和计算机的纽带,这些思维的过程,判断的过程我们都要精心的设计到算法里面,作为指令教给计算机去完成.
比如我们需要写个算法让计算机来解方程.
ax + b = 0
其中参数由键盘任意输入,让计算机输出结果.
我们能说凡是这样的方程就让计算机输出:
“x = - b/ a”就可以了吗?显然,这是有问题的,因为当a = 0 的情形下,这种输出是错误的,也就是说我们需要分情况讨论:
1) 输入a ,b ;
2) 若a ≠0 ,则输出x = - b/ a ;
如果a = 0 实际上方程变成了b = 0 ,这样的方程的解又是什么呢?看来还要看看参数b ,若b = 0 ,则方程为0 = 0 ,若b = 5 ,则方程为5 =0 ,这两种情形显然是不一样的,前者的解是任意实数,而后者则是无实数解,因此继续我们的算法
3) 若a = 0 ,还要对b 进行讨论:
( i) 若b = 0 ,方程的解是全体实数;
( ii) 若b ≠0 ,方程没有实数解.
对于这样一个看似简单的方程还有这么多门道呢?因为,作为一个算法必须是精确的,任何人按照(包括计算机) 这个步骤执行都能得到这个问题的求解.
我们可以从以上例子看出,书写一个算法的过程是一个思维的整理过程,是一个精确化、条理化的过程,因此有助于培养学生的逻辑思维能力.
温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-05-26
图1-2需要输入因为程序内部没有初始条件,不能进行循环,所以需要输入,而图1-3则在开始后直接给出了初始条件即i=9,所以不必再次进行输入,因为初始条件已经在程序内部给出。
相似回答