寻找适合学生的教学方法
——关于算法描述方法教学的思考
2017-03-23
算法作为程序设计的灵魂,从系统的角度去描述和解决问题,是信息技术中智能的基础,是中学生信息素养的重要组成部分和未来发展的基础 。结合对于新课标学习的心得,有以下几个方面思考,希望与同行一起交流讨论。
按照新课标算法教学目标,算法描述应以“解决问题”为主线
在教学内容上算法的描述方法给出了三种常用的描述方法:自然语言描述、流程图描述以及伪代码描述,这一部分内容在教学设计时教师应当强调以应用为主,因为高一年级学生刚刚在数学课上学习过算法初步,所以在设计问题情景时可以适当联系数学学科,举一些学生易于理解的例子,比如“快速计算1+2+……+100的结果”这个问题,对高一年级的学生再熟悉不过,刚看到题目时,很多学生就脱口说出答案“5050”,这使教学很自然地过渡到问题的求解方法,为后面引出课题做好伏笔,学生探究环节可以分组分别使用“自然语言描述、流程图描述、伪代码描述”,让学生在学习自然语言描述方法的同时,发现这一描述方法的不足,为后续学习流程图描述方法做好铺垫。
把握学生认知规律,因材施教
算法的描述方法在组织教学时可以换位思考,站在学生的思维习惯角度去看待问题,举一些具体问题作为研究内容,把抽象的术语形象化。可以用生活中的相关例子(如大家都熟知的华罗庚统筹算法提到的烧开水泡茶的例子)来画出流程图,再联系数学课上刚学过的解数学题的流程图。在设计练习案例时,可以适当考虑按照不同层次学生设计不同的题目,也就是分层教学,避免“吃不饱” 和“吃不了”,让不同层次学生都有所收获。
认识程序设计思想,算法描述须选择合适的载体语言
现阶段常用的算法描述方法可分为三种:自然语言、流程图、伪代码。每种方法各有千秋,很难说哪种最好,算法的正确与否必须要通过具体的程序设计语言来实现并得到验证,否则算法就成了“纸上谈兵”,也会给学生造成一种看不见摸不着的虚拟感。
算法初步这一模块中语言的选择,可以根据教学目的、现有条件等具体情况进行选择,以量体裁衣的理念选择一种适合本校学生思维特点和基础的语言环境,才能取得最佳教学效果。
针对本校选用的教材是VB语言这一特点,笔者在算法描述教学中积极尝试选择VB作为程序设计语言,一是学生比较熟悉VB,二是符合本校学业水平测试要求,三是VB语法简单,图形化设计界面易学易懂,对环境要求不高,程序结构清晰权衡各个语言特点,VB无疑是实现算法描述的一种语言环境的很好选择,在 “1.3算法描述方法应用”这一节教学设计中,笔者选择用VB代码实现算法,比如在问题“求两个自然数的最大公约数”中,依据“辗转相除法”(欧几里德算法)“穷举法”编写两种VB程序,组织学生分别运行测试,在实际操作中感知不同算法带来的运算效率差距,从而让学生体会算法优化的重要性,既轻松学会了算法,又巩固了VB程序设计。
算法的学习能培养学生的创新思维能力以及逻辑推理能力,可以充分发挥学生的想象力和创造性。因此在教学中应当积极探索更加有效的手段和方法,让学生打下坚实的基础,算法教学有着自身的规律和特点,需要在今后的教学实践过程中不断探索改进。