中学新课程算法教学的案例分析

时间:2020-09-04 09:41:05 论文范文 我要投稿

中学新课程算法教学的案例分析

  论文关键词: 算法 案例分析 循环结构
  论文摘要: 在高中数学课程中,算法内容的设计分为两部分:一部分主要介绍算法的基础知识,主要是通过一些具体的案例介绍算法的基本思想,使学生了解:为了解决一个问题,设计出解决问题的系列步骤,任何人实施这些步骤就可以解决问题,这就是解决问题的一个算法。
  
  一、算法概述
  1.算法的定义及其现代意义
  算法(algorithm)是在有限步骤内求解某一问题所使用的一组定义明确的规则。在数学中,现代意义上的“算法”通常是指可以用计算机来解决的某一类问题的程序或步骤,这些程序或步骤必须是明确的和有效的,而且能够在有限步之内完成。也就是说,解决一个问题所采取的方法(明确、有效、有限)顺序,是算法的核心。
  2.算法在构造性数学中有重要作用
  证明一个方程有解,通常有两种做法,一种是构造的方法,直接构造出该方程的解;另一种是用反证法,先假定该方程的解不存在,然后推出矛盾。但后一种方法无法知道这个解是什么。算法给出的是第一种方法的解。由于算法能够构造出方程的解,所以算法在构造性数学中十分重要。
  3.算法的基本思想
  算法的基本思想是指按照确定的步骤,一步一步去解决某个问题的程序化思想。在数学中,完成每一件工作。例如,计算一个函数值,求解一个方程,证明一个结果,等等,我们都需要有一个清晰的思路,一系列的步骤,一步一步地去完成,这就是算法的思想,即程序化的'思想。
  二、算法的作用
  数学学习的主要作用是形成“算法思维”。算法有着悠久的发展历史,中国古代数学曾经以算法为特色,取得了举世瞩目的辉煌成就。算法已经成为很多学科的基础。高中数学课程中的算法有以下几个方面的作用:
  1.算法学习能够帮助学生清晰思考问题、提高逻辑思维能力
  不论是代数问题,还是几何问题,算法框图可以准确、清晰、直观地展示解决问题的过程;算法程序可以借助计算机帮助我们具体地解决问题,得到需要的结果。一个算法常常可以解决一类问题。因此,算法,一方面,具有具体化、程序化、机械化的特点,同时又有高度的抽象性、概括性和精确性。将解决具体问题的思路整理成算法的过程是一个条理化,精确化和逻辑化的过程,有助于培养学生的逻辑思维能力。
  案例1:写一个算法让计算机来解方程: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进行讨论):
  (ⅰ)若b=0,方程的解是全体实数;
  (ⅱ)若b≠0,方程没有实数解。
  为什么对于这样一个看似简单的方程还有这么多门道呢?因为,作为一个算法必须是精确的,任何人按照(包括计算机)这个步骤执行都能得到这个问题的求解。
  从以上案例可以看出,书写一个算法的过程是一个思维的整理过程,是一个精确化、条理化的过程。给出一个算法,实际上是给出了一种实现的方法,就是一种构造性的证明或论证。因此,算法的学习有助于培养学生的逻辑思维能力。
  2.算法学习有助于学生全面的理解运算
  每一个算法都是一个证明——构造型的证明,著名数学家吴文俊提出的“机器证明”就是通过算法实现的,在信息时代,这种证明将会受到越来越大的重视。“运算”是实施这种证明的手段,只有这样,计算机才能帮助我们。
  3.算法学习有助于提高学生的信息素养
  信息技术正在改变着人们的生活方式、学习方式和工作方式。掌握和使用信息技术已是现代人必备的素养。在高中数学课程中也开设了信息技术课程。信息技术以计算机技术为核心,而计算机技术的核心则是算法。因此,算法的学习有助于学生理解信息技术的本质,提高学生的信息素养。
  三、算法的基本结构
  1.顺序结构
  顺序结构的算法的操作顺序是按照书写顺序执行的。
  案例2:设计一个算法,以确定给定线段AB的4等分点。解决这个问题的算法如下:
  (1)从已知线段的左端点A出发,作一条射线;
  (2)在射线上任取一点C,并作线段CE=EG=GD=AC,那么线段AD=4AC;
  (3)连接DB;
  (4)过C作DB的平行线,交线段AB于M,这样点M就是线段AB的4等分点.
  像这样的算法就是一个顺序结构的算法,只要按照书写顺序完成以上4个步骤,就能得到线段AB的4等分点。
  2.分叉(选择)结构
  选择结构的算法是根据指定的条件进行判断,由判断的结果决定选取执行两条分枝路径中的一条。
  案例3:求三个数的最大数的算法就是选择结构。
  解决这个问题的算法如下:
  (1)输入变量:x,y,z;
  (2)max:= x;
  (3)比较max和y:如果max  (4)比较max与z:如果max  (5)输出max.
  在这个算法中,我们根据与变量max比较的不同的结果决定后面的操作。
  3.循环结构
  循环结构的算法要根据条件是否满足来决定是否继续执行循环体中的操作。比如,上面求三个数中的最大数,我们进行了两次比较,假如我们要找出100个数中的最大数,按照上述算法就需要比较99次,算法步骤就是101步。既不便于书写,也不便于阅读.解决这个问题就需要利用循环结构了,对于求100个数中的最大数的问题,相应的算法可以用流程图来表示,像这样的算法控制结构,我们称为循环结构。在循环结构中,函数思想发挥着十分重要的作用。
  参考文献:
  [1][美]Mark Allen Weiss.数据结构与算法分析———C语言描述.人民邮电出版社,2005.
  [2]严蔚敏,吴伟民.数据结构(C语言版).清华大学出版社,2002.
  [3][美]Jan Harrington著.陈博译.面向对象C++数据结构.科学出版社,2005.
  [4]蹇强,罗宇.数据结构.北京邮电大学出版社,2004.

中学新课程算法教学的案例分析

论文相关查阅:毕业论文范文计算机毕业论文毕业论文格式行政管理论文毕业论文       

【中学新课程算法教学的案例分析】相关文章:

1.曲式分析教学中案例教学论文

2.案例教学下的市场营销教学分析

3.把字句教学案例分析论文

4.保险学课程案例教学分析

5.关于国际商法案例分析教学探讨的论文

6.案例分析论文提纲

7.高职“经济法”课程案例教学分析

8.资产评估学课程案例教学模式分析论文

9.案例教学在财务报表分析课程的应用论文