《3383.算法与程序设计教学之“化功大法”.doc》由会员分享,可在线阅读,更多相关《3383.算法与程序设计教学之“化功大法”.doc(5页珍藏版)》请在三一办公上搜索。
1、算法与程序设计教学之“化功大法”摘要算法与程序设计模块以问题解决与程序设计为主线,揭示利用计算机解决问题的过程。重在培养学生思维能力,在教学中强调理论与实践相结合,它不仅需要学生具有一定的动手实践能力,更需要具有一定的数学知识和逻辑思维判断能力。随着教学的深入,学生个体差异的增大,算法学习成为部分学生学习的一道难以逾越的屏障!本文探究的是在算法与程序设计中,如何“化苦为乐、化难为易、化错为宝”,正确有效的组织教学。关键词算法 化苦为乐 化难为易 化错为宝浙江省高中信息技术从2006年下半年开始实施了新教材,第二学期需要从多媒体技术应用和算法与程序设计中选一门,考虑到我校的实际硬件配备情况和与高
2、二数学课程的联系,我们选择了后者。算法与程序设计具有高度的抽象性和严密的逻辑性,教师难教、学生难学成为一个突出的现象。如何消除学生畏惧心理,充分调动学生的积极性,我在教学过程中做了以下尝试和探索。一、 化苦为乐算法学习尤如一杯没有加糖的咖啡,充满了淡淡的苦涩,如何品出其中醉人的清香,兴趣是妙方!心理学研究表明:人们对自己感兴趣的事物总是力求探索它,认识它。对于刚接触程序设计的高中生,如果一下子引入大量抽象的名词、概念,势必打击学生的学习兴趣,同时,在学生没有任何知识背景的情况下,要完全理解这些概念也比较困难。那么,如何将抽象变得具体,把复杂变得简单,把枯燥乏味变得生动有趣,苦中作乐,使学生在愉
3、快的课堂气氛中学习,思考,在不知不觉中达到对新知识的理解和运用。我以鲜活的实例为切入点,在每个例子中适时、适量渗透一些相关的概念和知识,让学生在做中学,在学中做,在完成任务的过程中,逐渐地、很自然地去体会概念。在讲算法概念时,我让学生先玩预先设计好的FLASH小游戏农夫过河:一个农夫带着一只鸡、一只猫和一袋米过河,但只有一条小船,并且每次只能让农夫带一样东西过河。农夫在场的情况下一切相安无事,一旦农夫不在,猫吃鸡,鸡啄米,游戏失败。这时,学生的兴趣一下子被激发起来,纷纷提出自己的方案,课堂非常活跃。在学生玩农夫过河游戏时,我提出算法是解决问题的方法与步骤这一概念。又如,在讲算法的优劣性时,我引
4、用了成语典故“田忌赛马”。战国时代,齐王常与他的大将田忌赛马,双方约定每场各出一匹马,分三场进行比赛。齐王的马有上、中、下三等,田忌的马也有上、中、下三等,但每一等都比不上齐王同等的马,于是田忌屡赛屡输。一日,田忌的宾客、对军事颇有研究的孙膑给田忌出了一个主意,结果以二比一赢了齐王。学生饶有兴趣地分析出了田忌赛马的六种方案,接着我要求他们选出孙膑的方案,并点出算法具有优劣性。学好算法是一个漫长、痛苦的过程,通过玩小游戏、引用典故来学习算法可以激发学生兴趣,使他们充分享受成功的喜悦。学习内驱力得到了淋漓尽致的挖掘,学习效率也得以明显提高,学生乐在其中!二、 化难为易算法与程序设计模块对学生逻辑思
5、维有一定的要求,很多学生反应晦涩难懂。如何让高中学生掌握VB语言,其关键就在于“化难为易”。从学生已有的经验出发,先直观展示,后抽象思维,再代码设计。这不仅可以帮助学生理解算法,减少他们对算法设计的畏惧感,而且可以激发他们的学习兴趣。典型案例:两数值交换问题。小实验:有两个杯子A和B,A杯装有雪碧,B杯装有可乐,问如何把两个杯子中的饮料互换。分析:这是学习算法与程序设计过程中一个最基本的问题,在信息技术基础、算法与程序设计、算法与程序设计学生活动手册中多次出现。该问题设置的主要目的是为了引出“两数交换”算法。由于是生活中的实例,很快就有同学提出“再加个空的C杯”。通过实物操作演示,学生就理解了
6、互换的原理。( 3 )( 1 )雪碧可乐空杯( 2 )画出流程图:A BB C开 始C A结 束给出代码:C=AA=BB=C在该案例教学过程中,没有直接提出两数交换问题,而是通过生活中杯子饮料互换这一实例做类比,不仅活跃了课堂气氛,降低了题目本身难度,更重要的是激发学生的兴趣,培养了学生的思维能力。而后再将知识迁移,通过这样的过程,学生对两数交换的理解和记忆都达到了很高的层次。又如,在说到循环的两种形式时,For循环与Do循环的区别是个难点,学生难以理解。于是我以剥毛豆为例,提出两种情况。第一种情况,我要剥豆,但我只剥10颗,就不剥了;第二种情况,我一直剥,直到毛豆剥完,或者手酸为止。在第一种
7、情况下,我知道要循环几次(用For循环,通过次数控制循环的计算过程),而在第二种情况下,我不知道要循环几次,但是知道什么时候循环结束(用Do循环,通过条件控制循环的计算过程)。Do while 毛豆还没剥完 剥一颗毛豆 取下一颗loopFor i=1 to 10 step 1 剥一颗毛豆Next i书本上的循环结构内容安排得非常专业化,教条化,难度大,不适合高中学生来理解循环思想,如果就按照书本内容照讲,学生上课时即使理解记忆了,但可以肯定的是他对循环的应用没有自己的理解,更谈不上应用了,有的仅是书本上知识的记忆。通过这样有趣的比喻,将问题由难变易,让学生在欢快的气氛下,理解并记忆关于循环的应
8、用情况的知识点,彻底了解循环的原理。三、 化错为宝在算法与程序设计课堂教学中,我发现错误总是伴随着学生的学习过程。心理学家盖耶认为:“谁不考虑尝试错误,不允许学生犯错误,就将错过最富成效的学习时刻。”学生出现的错误自有它的特有之处,我们要容“错”、用“错”、诱“错”、最后纠“错”,这样才能让“错误”美丽起来,让课堂鲜活起来,让教学变得更加有意义。在课堂中我把学生每次上机犯的错误都记录下来,放到错误共享资源库,学生在调试程序时,如果发现错误,可以从资源库里“检索”。一段时间下来,学生的语法错误果然减少了。错误源(全部来自学生错误)分析错误反思错误Private sub form1_load()P
9、rint #_#End subform1_load()改为command1_click()Print方法在form_load事件过程中不起作用Text1 text= Text2, text= 应改为Text1.text表示对象的属性时,用“.”隔开Text1.text=“您好!”使用中文标点符号,系统产生“无效字符”,以红色显示。“”要改为英文标点符号。字符串常量要用英文标点符号。Dim max as IntegerMax=100000Integer类型改为Long类型不匹配。实时错误424要求对象窗体上未设计对象或对象名称与代码中的不符合窗体上的对象名应与代码中的符合If d o Theno
10、应改成0输入错误而造成的语法错误非常普遍,输入程序时一定要认真仔细、并养成良好的操作习惯。Spr(x)Spr应改成SqrLabe1Labe1应改成LabelTesttest应改成TextTureTure应改为TrueDim s as stringText1.text=Str(s)去掉StrS是字符串类型数据,不需要str函数学生的错误是课堂最原生态的“资源”,我们不能忽视这些资源,而应充分利用这些错误带给我们的教学契机,化错为宝。课堂错误也只有在不断地改正中行进,在教师的良好驾驭中转化提升,才能迸发无穷的魅力。算法与程序设计教学一直都存在“难教”和“难学”的问题,这是由于程序设计本身抽象、枯燥,逻辑思维性强,高中学生不易入门。现代心理学表明好奇心、求知欲和创造力是紧密联系的,怎样培养学生的好奇心、求知欲、创造力,使学生乐于学习,这是值得探讨的。整个教学过程要符合学生的认知规律,化难为易,有助于提高教学效率。以“错误是资源、错误是财富”的理念为驱动,正确对待学生的各种错误,化错为宝,使学生在错误中成长。这是值得我们思考和不断研究的新课题。参考文献“错”中自有黄金屋算法与程序设计课程“课堂错误”转化提升策略 边楚女