让学生乐于学习算法和程序设计_第1页
让学生乐于学习算法和程序设计_第2页
让学生乐于学习算法和程序设计_第3页
让学生乐于学习算法和程序设计_第4页
全文预览已结束

下载本文档

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

文档简介

1、让学生乐于学习算法和程序设计摘要:算法是逻辑性,抽象性思维很强的学习内容,在教学中如果处理不当往往会导致学生丧失兴趣,挫折感增强,进而影响用算法解决问题,培养信息素养的二期课改目标。为此,本文从多个角度探讨了让学生乐于学习算法和程序设计的方法。关键词:算法 程序设计 兴趣 经验 思维 生活引言:算法初步是华师大版高中信息科技教材中的必修内容。二期课改新的课程标准提出:信息科技学科是一门以提高学生信息素养和在信息化环境下学习能力为目标,以计算机为载体,以学信息技术、用信息技术、懂信息技术、与信息技术一起学为基本的学习过程,融知识性、技能性和工具性于一体的重要的基础课程。培养解决真实、开放问题能力

2、,同时运用信息技术发展思维、学会学习、自主探究和合作交流的能力。其中在课程内容的信息技术基本技能算法与程序设计模块中指出:能结合实例,经历从需求分析、算法确定到编程求解等用计算机解决问题的基本过程,理解用计算机解决问题的特点。然而,我发现,大多数学生对算法学习越来越不感兴趣。随着教学的深入,学生个体差异的增大,算法学习反而成为部分学生学习的一道难以逾越的屏障!即使有的同学通过了会考,后来再问他们,都认为象云里雾里走过一样,回想起来还是懵懂未知。那么,为什么学生对算法和程序设计不感兴趣,对算法的学习不太适应,是哪些障碍造成的?如何让算法思维成为学生学习生活的一部分?对这些问题,我在教学上尝试了一

3、些解决方法,具体如下。一、 激发学生兴趣,尽量做到零起点教学,无论所学东西多么重要实用,对学生而言,兴趣始终是激发出自主学习潜能的重要因素之一。近来许多信息技术学科的教师都有这样的感觉,学生对信息技术课程的兴趣已经不如前几年了,这也难怪,随着经济的发展,许多城市里电脑已如普通电器一样进入到家庭中,网吧也随处可见,在网上看电影、听音乐、玩游戏等种种消遣,无疑比课程内容更具吸引力。然而,我们不能放弃,当学生听音乐而不懂如何下载时;当学生玩游戏之余想自行设计时;此时,我想教师的介入与引导将起到事半功倍的作用。其次,要对学生内在本能加以启发!当学生被 “漂亮”的作品所吸引的时候,就会有一种自己也来做一

4、个的欲望,然后逐步引导学生学习对程序的设计!如,在讲授枚举法时,运用密码破解的影片片断激发学生的兴趣,然后让学生设计一个密码破解器,将极大地挑起学生程序设计地欲望。还有就是尊重学生的兴趣很重要,不可能也没必要让每个人都成为程序员,让学生学点算法思想去解决实际问题总归是有好处的,而不一定要求所有学生非要把算法学得很精通。我倒是很乐意在高中的信息技术课本中看到纯粹用汉语去描述的算法,用游戏展示的思想,而不全是FOR-NEXT,IF-ELSE。听说有一种中文编程语言易语言,有机会不妨一试。教师在算法与程序设计教学时,应循序渐进,尤其是尽量做到零起点教学,免得太抽象的逻辑思维把学生的兴趣吓退。不要把具

5、体程序着急引入,而是应该从基本算法思想开始,从生活实例着手,引导学生进行分析和讨论。如在讲分支结构时,先从两个数字比较大小的分析来入手就可以让知识的进入门槛降低,倘若一开始就让学生画流程图,就容易造成学生手足无措,灰心进而损害学习的积极性。还有,对于程序设计来说,学生比较容易接受的应该是那些以图形界面为面板的设计软件,而用WORD来设计的话,就算是教师都会感觉困难,所以选择那些图形界面的设计软件对于初学者来说比较容易上手,有助于培养他们对画流程图的兴趣,也有助于学生更好地理解流程图的结构思想。二、 从学生已有的经验出发,先直观展示,后抽象思维,再代码设计任何知识的学习,都要从学生的已有经验出发

6、;并且这些经验以及根据这些经验设计的学习环节,又应该是能够唤起学生学习兴趣的;而学习兴趣既可以基于生活化、游戏化等手法去唤起,同样也可以使用知识本身的内在魅力去唤起;实际上,无论哪种方式,对不同的学生,有不同的效果。在信息技术课程标准里,提高学生的信息素养是教学的目标,所以教学过程完全不必拘泥于程序设计这个狭小的范围,我们可以结合其它学科,于游戏中学习,于生活中学习,再加上信息技术学科本身有着综合性、更强发散性的特点,可以让我们的教学变得更加生动多彩。如在讲算法概念时,除了用书上山羊、狼和人过河的例子外,还可以进一步增加一些实例加以巩固兴趣。例如:一个人带三只老虎和三头牛过河。只有一条船,同船

7、可以容一个人和两只动物。没有人在的时候,如果老虎的数量不少于牛的数量就会吃掉牛。请设计安全渡河的算法。通过问题的深入来调动了学生主动探索学习的积极性。甚至可以采用游戏软件的方式来调动学习的兴趣,理解算法的学习。比如,课后我让学生玩预先设计好的FLASH小游戏商人过河:仆人3人,商人3人,其中小船最多同时2人,两岸不允许仆人多于商人,否则打劫,游戏失败。让学生从游戏中理解算法。从平时教学来看,算法对部分学生来说,尤其是从头开始接触算法时,会茫然不知如何着手,这时候,尽可能使用直观的软件,如采用一些教学软件,制作适当的教学课件,往往会让学生能够更加的直观和易于理解。早几年我们高中曾教过Author

8、ware软件,当时Authorware软件中也有顺序、分支和循环结构。奇怪的是为什么Authorware学生比较容易上手?为什么从它开始进入比较方便?因为它使用的是非常直观的流程图方式,这种方式与学生的已有经验相关,因此容易掌握,从而进一步利用它学习程序设计。记得有一次参观教学机器人的软件,是一个控制程序开发的可视化平台,就是从流程图搭建开始组织程序,并在窗口右侧给出自动形成的底层代码。又直观,又简单,对算法的思维形成很有帮助。当时还和奉二小的陈伟一起商量下载一个试试,后来因为版权的原因放弃了,甚是可惜。平时,好多学生从流程图搭建开始,而不会转化为代码设计,其中对思维方式的理解和知识的迁移,需

9、要我们教师加以引导,才能自然而然地熟悉了代码并开始直接用代码来设计控制程序。三、 从学生的习惯思维入手,逐步接受算法的思维方式,形成清晰的思维结构。今年,在讲一道铁丝围矩形的题目时,已知周长、面积,求宽、高?很多同学都能顺利解决,因为他们的习惯思维方式是数学的解题方式。即设宽、高分别为W、H,成立一个方程组,然后转换求解。这道题充分体现了算法与数学的紧密联系,让学生既学习了解析法的思想,又尝到了成功的喜悦,而教师则可以在此基础上进一步让学生尝试用枚举法的思想来解决。逐步让学生接受算法的思维方式,形成清晰的多种解决问题方法的思维结构。如果从学生的习惯思维入手,很多学生还是很有兴趣的,因为算法研究

10、是一种真正的创造解决问题的思维方式,并能获得多种解决问题的思维方式,学生的兴趣还是很大的。不适应的往往是缺乏兴趣的,只要有兴趣的都想了解一下算法背后的故事。如讲到斐波纳挈数列中兔子的繁殖问题时,学生都想知道最终到底有多少对兔子。关键是如何让他们小步成功,缓步形成清晰的思维结构。四、 逐步培养算法的基本思想,切忌急于求成算法和我们习惯的思维不尽相同,不能完全以我们常规解决问题的方法来进行思考。算法的教学从高中生开始,这时的学生具有一定的思维能力。在教学时,感觉学生开始的时候,习惯以自己的思维方式来解程序,往往会显得片面,容易出错。所以要学生接受算法的基本思想需要一个过程,如果能转过弯,接受算法的

11、思想,那么后面就水到渠成了,如果始终用习惯思维,可能会造成后继学习的困难。而注重算法训练主要可以培养起学生的算法思想。从实际的教学来看,在算法和程序设计中,往往尊重、信任学生的自我个性体现,在教学中结合生活经验或已有知识来开展教学,效果比较理想。这也符合青少年学生渴望独立的年龄特征。我除了让学生探讨问题解决方法外,还让他们多接触编程的经典思想(即便是用汉语描述的),对学生也大有裨益,可以当成是智力开发题。如对半查找,用语言描述学生反而易于理解,而用代码方式,有的学生就难以理清思绪,需要教师细细讲解分析,逐步培养。此刻,重点已经不是编程语言,不管是自然语言、C还是VB都是算法的理解应用,都是算法

12、的思维,这部分内容应该是严谨和可以逐步培养的,虽然可以在一些案例上生动些,但算法思维中最基础、最基本的东西应该是固守和需要逐步培养的。我理解的目标是:缜密的逻辑思维+严谨的学习态度五、 从生活中选取算法有一次,有个学生对我说:“老师,算法太难了,我都不知道怎么做。”其实,算法并没有我们想象中的那么难!也许学生会人为地把算法孤立起来,并认为毫无意义。实际上,算法的许多地方都在我们的生活中使用,例如简单的安排作息时间等。源自生活的类似流程性经验,可以用来迁移帮助学生学习程序设计,反过来,程序设计的学习又可以强化学生使用流程类方法解决问题的能力。有的学生,会认为算法就是解数学题,既枯燥又无趣。可其实

13、在程序设计时解的数学题多数都是趣味数学题,而且大多与生活联系密切。我曾指导过一个学生参加市算法竞赛,辅导过竞赛题型。当时认为,那才是真正的算法,真正的程序设计,但确实难度较大。那个学生曾对我说:“.我开始沉浸在书中描绘的神奇数据建筑之中了线性表,二叉树,拓扑图那些原本就充满活力的数字,构成一种种奇特的组合结构,太妙了!”我想,如何让学生都有这样的体验!若是能让学生从中体会到算法的真正魅力,那么算法还难么?生活中的算法更真实,从生活中选取算法,能唤起学生的生活经验,比枯燥讲算法容易。同时也对学生更有意义。我曾看过这样一道源于生活的算法,并介绍给了学生。床头的四本书小明的床头总是堆着几本书,他有在

14、睡前看书的习惯,但每晚只抽其中的一本来看。在相当长的一段时间里,床头柜上总共叠了四本书,最下面的那本,是平均6天才看一次,其上一本,是平均3天看一次,再上面一本,是平均2天看一次,那么最上面的一本书,多少天才看一次呢?请用算法解决此问题。许多熟悉编程的朋友都觉得这是个棘手的问题,因为不仅要涉及数组和循环语句,还有着难缠的不确定性,因为可能连着几晚都看同一本书,然后又在其后连续几天都把这本书搁在一边。那么答案究竟是什么呢?其实,最上面的那本书,小明从来不看,是用来挡灰的。这可不是脑筋急转弯,即1-1/2-1/3-1/6,结果是0,实际上也许心算更快。这样,既简单又有趣,学生自然会乐于学习了。六、

15、 让算法来指导生活许多人认为学习算法意义不大,因为他们认为专业的算法很难直接指导生活。当然,无论黑猫白猫,能抓老鼠就是好猫。生活中问题的解决方式多种多样,算法以其缜密的逻辑思维,通过使生活中繁复的问题抽象化的方式成为解决生活问题的一个重要途径,有时,甚至能用来指导和提炼生活。如解析法的教学,华师大版教科书上银行存款的利息问题来源于生活,分别有计算复利和不计复利两种方式。而实际生活中,除了利息的计算外,还有住房贷款的还贷;国债的收益,股票和基金的投资方式等。在教学时,我把这类问题统称为投资理财问题,让学生以研究性课题的形势进行深入分析,获得了良好的效果。我们有的学生,通过这一项目学习,自学了许多相关的知识,有个现在已经高三的同学,研究的项目是银行贷款,按要求是等额还款,他不但研究了等额还款的程序设计,还设计了等本还款的算法。为实际操作提供了多一种渠道,倘若按此算法进行实际操作,可少还近2万元利息。可以看到,这里的内容已经是递推算法了,完全超越了解析算法

温馨提示

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

评论

0/150

提交评论