教学交流:算法教学的思考_第1页
教学交流:算法教学的思考_第2页
教学交流:算法教学的思考_第3页
教学交流:算法教学的思考_第4页
教学交流:算法教学的思考_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、PAGE14算法教学的思考一、教学内容的解析确立教学目标与重点在“算法的概念”一课的教学过程中,执教者按照原定教学设计完成了教学过程,但给听课者的总体感觉是教学重点不突出,学生对算法的认识停留在一种模糊的状态,造成这种结果的重要原因是在教学设计中对教学内容的解析不到位也许有人会觉得,算法是一个人人都觉得还没有明确定义的数学概念,课堂教学时用一些实例写写步骤感觉一下就行了实际上,作为数学概念,算法有它的基本特征和内涵,对它进行内容解析时,需要进行深入的思考与挖掘,这是非常重要的当前,版数学3在充分比较各种表述后,给算法的基本特征及其内涵作出如下界定:“在数学中,算法通常是指按照一定规则解决某一类

2、问题的明确和有限的步骤现在,算法通常可以编成计算机程序,让计算机执行并解决问题”1在上述表述中,强调了在“数学中”,这就为教学时选取教学内容(特别是具体的算法案例)指定了范围,教科书也因此只针对数学上的算法案例来阐述算法的概念这样处理,就是为了避免将算法的概念泛化,以至于教学目标不落实因此,选取“狼羊菜过河”作为算法案例是不恰当的2“步骤”是算法的最显著的特征,它蕴含着“有序性”同时,算法的步骤不能不明确,也就是说算法步骤具有“明确性”例如下列表述中的省略号就不具有算法步骤的“明确性”:第一步,给定大于2的整数n第二步,用2去除n,得到余数t若t=0,则2能够整除n,n不是质数,算法结束;否则

3、,进入第三步第三步,用3去除n,得到余数t若t=0,则3能够整除n,n不是质数,算法结束;否则,进入第四步第(n-1)步,用(n-1)去除n,得到余数t若t=0,则(n-1)能够整除n,n不是质数,算法结束;否则,n是质数实际上,是否“明确”,只要看人们(特别是计算机)机械地执行给定的步骤后是否能得出正确结论显然,省略号所代表的部分是无法执行的算法的第三个基本特征是步骤的“有限性”,也就是说任何一个算法都必须在有限步内完成尽管算法还有其它一些特征,但“有序性”、“明确性”和“有限性”是算法的基本特征3在算法概念的表述中,“一定规则”指的是设计算法时的依据,例如“辗转相除法”和“更相减损术”是求

4、两个正整数的最大公约数的不同依据,这些依据通常是不同的数学结论或数学方法,因而是不同的规则根据不同的规则得到的算法就是不同的算法,这与算法用什么方式(算法步骤、程序框图或程序)表示无关例如,在设计“求解二元一次方程组”的算法时,采用不同的方法消元就会设计出不同的算法4一个算法通常有输入和输出,有不同的输入就有不同的输出因此,设计算法通常是为了解“某一类问题”,强调的是算法的“通用性”,但这不排斥把解决某一个具体问题的步骤也看成是算法因此,教科书在安排“求解二元一次方程组”、“质数的判定”和“用二分法求方程的近似解”三个案例时,都是先具体再一般,这不仅便于学生理解,更重要的是强调算法在解决“某一

5、类问题”时的“通用性”5在算法的内涵中,最重要的是算法步骤之间的逻辑结构,它不仅是算法的基石,同是也是算法能在计算机上实现的基础虽然程序框图是表达算法逻辑结构的最直观方法,教科书也把算法的基本逻辑结构与程序框图安排在一起,但算法的基本逻辑结构并不依赖于程序框图因此,离开算法的基本逻辑结构来介绍算法的概念,是对算法概念理解不到位的做法要真正使学生理解算法,就必须从算法的基本逻辑结构入手因此,算法基本逻辑结构的提炼是算法概念教学的重点但“研究课”上这一重点没有得到体现6信息技术时代,算法的重要性已经成为共识在高中数学课程中,解一元二次方程组、解二元线性方程组、解一元二次不等式、质数的判定、二分法、

6、判定平面直角坐标系中直线与圆的位置关系、解三角形、求导数和定积分、建立线性回归方程等,都是算法的典型案例由此可见,算法思想贯穿整个高中数学,算法的学习对整个高中数学的学习有着“源”与“流”的关系同时,算法的内容特点使它在发展学生有条理地思考与表达的能力方面有着特殊的作用“研究课”中,教师关注了章头图,并提到了“算盘”“计算机”“算法”等,但所安排的内容对促进学生体会算法的重要性还不够如果再提供一些章头图中所涉及内容的图片资料,特别是计算机领域所取得的一些重大成果,以及与人们生活息息相关的计算机应用成果等,那么学生对学习算法必要性的认识和兴趣都会有更大的提高7通过对算法概念的内容解析,我们可以确

7、定以下教学目标:(1)通过具体实例了解算法的含义,明确算法的基本特征(有序性、明确性、有限性);(2)能用自然语言写出解决具体问题的算法步骤;(3)通过具体实例的算法步骤,体会算法的基本逻辑结构(顺序、条件、循环)是算法步骤间的内在联系在“研究课”中,由于对教学内容的解析不准确,对教科书中的案例重视不够,没有充分挖掘这些案例的内涵,同时自己补充的有些教学素材又不确切,教学进程中的问题设计不精细,造成课堂教学偏离上述目标,影响了教学效果二、教学目标解析与教学问题诊断描绘教学过程1目标解析与教学问题诊断目标(1)是教学的基本目标,应该结合具体实例(如求二元一次方程组的解)来实现算法的表述中有不少关

8、键词,在给出算法的概念时,还不可能对所有的内涵揭露得很清楚,因此,只需学生通过具体实例对“算法通常是指按照一定规则解决某一类问题的步骤,这些步骤有着明确的顺序性”有一个总体了解在介绍算法概念时,学生对其中的“明确性”与“有限性”不可能达到实质性理解虽然这是本课的第一个教学问题,但此时不应过分纠缠,而应结合后续的“质数的判定”、“用二分法求方程的近似解”两个案例,引导学生体会和理解目标(2)是学生对算法了解程度的重要标志,是主要的教学目标实现这个目标的最好方法,就是结合教科书提供的案例,多给学生练习机会由于学生头脑中算法的背景知识太少,对算法特征与内涵体会不够,导致他们不能清楚区分算法与非算法,

9、可能会写出一些不是算法的“算法”,这是第二个教学问题解决的方法是先让学生独立写,再展示和讲评,从中获得反例,并引导学生通过比较而认识算法与非算法目标(3)是教学重点教学时可能遇上的第三个问题,就是如何提炼算法的条件结构与循环结构算法中所蕴含的循环结构的提炼也是教学的难点2教学支持条件(1)学生对算法的兴趣,很大程度上源于算法与计算机的联系在得到一个具体的算法后,演示一下计算机执行算法的过程,可以加强学生对算法内容的关注度,提高他们的学习兴趣因此,可先编制好相应的程序供教学中演示(2)探究“质数的判定”与“用二分法求方程的近似解”的算法均涉及计算问题,准备具有“求余数”、计算复杂函数值的计算器或

10、备好相应软件的计算机,对于提炼算法中的结构(特别是循环结构)将有极大的帮助在“研究课”中,教师对(1)有所表现,但对(2)没有考虑,这说明教师在教学中没有关注到算法结构的提炼对理解算法的重要性三、教学目标与教学问题引领教学过程的问题设计教学的最终结果是实现教学目标所以,要用教学目标引领问题设计,使“问题串”的问题系列与教学目标的“子目标”系列相对应,从而提高教、学行为的针对性和有效性,使教学目标顺利实现但在设计教学过程时,哪些问题必须考虑怎样提出这些问题“什么是算法”“算法的基本特征是什么”“如何表示算法”“怎样写出算法的步骤”等是围绕教学目标的关键问题,必须给予考虑但如果在课堂上直截了当地提

11、这些问题,那么学生的思考会因为缺乏具体背景的支撑而变得盲目,甚至对问题本身也会不知所云所以,“算法教学必须结合实例进行”1为了让学生了解算法的含义,明确算法的基本特征,可设计如下的问题问题1对下列的二元一次方程组,你能写出它的解答过程吗收集学生的不同解答,再与教科书上的解答作比较意图:使学生关注算法的步骤,区分算法与一般的解法问题2教科书提供的解答有什么特点意图:引导学生体会教科书的解答特点是呈现为“有序的步骤”问题3你能按照解的步骤,得出求解方程组的步骤吗所得到的步骤能否交换顺序让学生尝试,并与教科书中的步骤作比较,认识到所得的各个步骤不能交换顺序意图:体会算法通常是用来“解决某一类问题”的

12、,步骤有着明确的顺序问题4求解二元一次方程组的全部步骤就叫做一个算法据此,你能说说算法的含义吗学生表述后,指引学生看教科书的表述教师利用已有的教学资源(如学生提供的二元一次方程组的不同解法等)讲述“一定规则”和“某一类问题”的含义意图:初步了解算法的含义2在进一步体会算法的含义,揭露算法的基本特征时,可安排如下的问题引导性语言:大家知道,1997年,香港回归;1999年,澳门回归有意思的是,这两年均是质数年你知道如何判定1997、1999是质数一般地,如何判定一个正整数是否为质数下面从具体问题的讨论开始意图:激发学生的学习兴趣,引出“质数的判定”的算法探求问题问题57是否为质数你能写出判定7是

13、否为质数的算法吗让学生写算法的步骤,交流并点评学生写的算法步骤意图:体会如何从算法的角度思考质数的判定,体会算法的特征,知道下列表述的步骤是不明确的,所以都不是算法:(1)因为2至6的整数都不能整除7,所以7是质数(2)第一步,用2除7,得到余数不为0,所以2不能整除7第二步,同理,3至6的整数都不能整除7,所以7是质数问题6你能写出判定1997是否为质数的算法吗35呢让学生试着写一写,可能会出现不同情况教师有针对性地进行相应讲解1997太大,像判定7是否为质数那样去判定1997是否为质数是一件很困难的事情因此,学生可能会写出下列步骤:第一步,用2除1997,得到余数为1因为余数不为0,所以2

14、不能整除1997第二步,用3除1997,得到余数为2因为余数不为0,所以3不能整除1997第三步,用4除1997,得到余数为1因为余数不为0,所以4不能整除1997第1995步,用1996除1997,得到余数为1因为余数不为0,所以1996不能整除1997因此,1997是质数但是,上述表述的不是算法事实上,如果上述的表述是算法的话,我们同样可以说明35也是质数:第一步,用2除35,得到余数为1因为余数不为0,所以2不能整除35第二步,用3除35,得到余数为2因为余数不为0,所以3不能整除35第三步,用4除35,得到余数为3因为余数不为0,所以4不能整除35第三十三步,用34除35,得到余数为1

15、因为余数不为0,所以35不能整除35因此,35是质数但实际上却有,即不是质数之所以会出现误判,是因为“”表达的步骤不明确事实上,只要在上述步骤前三步的基础上再写下:“第4步,用5除35,得到余数为0,所以5整除35所以35不是质数”然后去掉以后的步骤,就可以得到判断35不是质数的算法意图:认识算法步骤的“明确性”,体会算法的顺序结构问题7从问题6知道,一个算法步骤中不能出现类似“”的步骤,但对于像1997这样大的数,要像判定7是质数那样的写出判定其是质数的所有步骤是不现实的那么,在不改变“规则”的前提下怎样表达这个算法呢引导学生分析并认识到,在问题5中,判定7是否为质数的每一个步骤,表示除数,

16、那么所有步骤都包含以下内容:“用i除7,不为0,所以i不能整除7”在问题6中,只要把被判定的数7改为1997,则每一步均包含以下内容:“用i除1997,不为0,所以i不能整除1997”因此,我们可以把判定1997是否为质数的算法写为:第一步,令i=2第二步,用i除1997,得到余数为r第三步,判断r是否为0若是,则1997不是质数;否则把i的值增加1仍记为i第四步,判断“i1996”是否成立若是,则1997是质数;若否,返回第二步让学生将1997改为任意大于2的整数,改写算法,得出“判定整数n(n2)是否为质数”的算法意图:问题5、问题6中的算法结构仅有顺序结构,这是最普遍,也是最容易被学生理

17、解的算法结构但像判定1997是否为质数的算法那样,很多算法仅用顺序结构表达是不够的,问题7的作用就是让学生体会并学会提炼算法的另外两种基本逻辑结构(条件结构和循环结构),这是算法能在计算机上实现的基石问题8你能总结一下算法的基本特征吗让学生说说,教师总结意图:得出算法步骤的基本特征,并由此加深对算法含义的理解3为了认识和提炼算法的循环结构,更准确地理解算法的“有限性”特征,可在“用二分法求方程的近似解”中设计如下问题问题9你能结合下列图表说说“用二分法求方程的近似解”的基本过程吗?意图:让学生回顾二分法的基本思想,启发学生从算法角度思考问题问题10用计算器实现求解过程,得下列图表你发现哪些步骤是被重复执行的教师引导学生思考求解过程,并用信息技术演示过程意图:提炼算法结构(主要是循环结构),为写出算法的步骤作准备问题11上述求解过程中,我们得到的解的精确度是多少如果精确度要求为,可以减少多少个同样的步骤如果精确度要求为,又要增加多少个同样的步骤意图:揭示循环结构中控制循环

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论