首页 -> 2008年第7期

“算法多样化”的再思考

作者:荀步章




  计算教学中的 “算法多样化”是指计算方法的多样化,即对同一个计算问题运用不同的方法来解决。这样的教学,不仅可以开放学生的思维,培养学生独立思考的能力,而且有利于因材施教,发掘每个学生的潜能,使学生主动和谐地发展。但在实际计算教学中,对“算法多样化”还存在一些误解,有必要指出需要注意的几个问题。
  【存在的误解】
  
  一、 “算法多样化”与算法形式化
  
  “算法多样化”应是一种态度,是一个过程,“算法多样化”不是教学的最终目的,不能片面追求形式化、全面化。在斯苗儿老师的报告中,有一位教师在上“9加几”的加法时,为了体现新课程标准中所倡导的“算法多样化”安排了以下教学环节。
  出示例题“9+3=”让学生口答,并说说你是怎样想的。
  生1:9+3=12,因为9加1得10,10加2得12,所以9+3=12。
  生2:9+3=12,因为9和3组成12,所以9+3=12。
  生3:9+3=12,因为3加7得10,10加2得12,所以9+3=12。
  师:还有其他想法吗?
  生:沉默。
  师:再想一想,想得仔细一点。
  生:还是沉默。
  师:你们想一想(边说边做掰手指状)。
  生4:我知道了,我们还可以一个一个地数手指。
  (在座学生哄堂大笑)
  师:对!你说得很好,我们是还可以掰手指,这也是一个好方法。
  生5:不对,这个方法是在幼儿园里学的,我们已经是小学生了,不应该再用这种方法了。
  师:(显得很不自在)接着问:还有其他算法吗?
  生6:摆小棒,先摆9根,再摆3根,然后数一数,一共有12根。
  生7:还可以摆圆片、摆三角形……
  老师把这些方法都一一罗列在黑板上(显得很自豪)。
  在这位老师的教学中,为了向学生“索要”多样化的算法,体现新课标中的“算法多样化”,引导学生寻求“低层次算法”,是很不可取的。为了“算法的多样化”,绝不能追求算法的形式化。有时教材编排的算法在教学时学生没有出现,学生已经超越了的“低层次算法”教师可以不再出示,没有必要走回头路。
  
  二、 “算法多样化”与呈现狭隘化
  
  如在“13-9”教学中,教师引导学生摆小棒,合作研究,探索出如下两种口算方法。
  生1:13-9=4。
  生2:因为9+4=13,所以13-9=4。
  师:还有其他不同的算法吗?(无人举手)
  教师演示从13个里拿走3个。
  师:还剩多少个?
  生齐:10个。
  师:算13减9,还要再拿走几个?
  生齐:6个。
  师:13减9还可以怎样想?
  教师板书:13-3=10,10-6=4。
  师:你们喜欢哪种算法?跟你的同桌说一说。
  师:用你们喜欢的方法算一算这几道题,好吗?
  ……
  教材上出现的多样化算法在教学中都得呈现吗?“教材仅是一个例子”,教材内容并不是教学内容的全部。“算法多样化”的呈现并非狭隘地套搬教材,而应从学生的认知状况出发,对教材中编写的算法进行有选择的调整、加工、以创建适合学生的教学内容。
  【注意的问题】
  
  一、 “算法多样化”与选择个性化
  
  每个学生都有着自己独特的先天生理遗传和不同的家庭背景、生活经历,每个学生都有自己独特的认知基础和思维方式。这种认知上的差异,不可避免地影响到儿童的学习活动,在掌握知识和解决问题的过程中表现为从不同角度进行分析、思考。如一位老师在教学“7+5”时学生想出了多种不同的算法:
  生1:7+3=10,10+2=12;
  生2:5+5=10,10+2=12;
  生3:7+6=13,所以7+5=12;
  生4:8+5=13,所以7+5=12;
  生5:8+4=12,所以7+5=12;
  生6:在7后面接着数出5个数,是12。
  显然,生3、生4、生5善于从某一事物与其它事物的关系出发,构造一个算法解决问题,表现出把事物放入系统中去研究的倾向。而其他学生则善于从事物本身的特点和内部关系出发构造一个算法解决问题,表现出根据问题的内在关系和特点进行研究的倾向,会分析利用对象自身的特征。这些不同的算法,展现出学生的不同认知个性,在一定程度上也预示了不同的发展可能性。我们应当尊重学生的这种个性差异,鼓励“算法的多样化”,让不同的学生获得不同的发展,促进学生的个性化学习。
  
  二、 “算法多样化”与思维有序化
  
  “算法的多样化”有利于促进学生思维的发展,这种发展可以从质和量两个方面进行。质的方面是指学生在解决问题时能有序思考,想得全,不重复,不遗漏,有规律地找出全部方法或结果。量的方面主要是指学生解决问题的策略多,方法灵活。目前,我们的课堂教学大都注意了引导学生找出尽可能多的方法,从量的角度发展学生思维,但忽略了有序思维,从质的方面发展。如何从质的方面发展学生的思维呢?这就需要充分利用已有的各种算法,引导学生进行反思,理清解决问题的思路。
  如前例中学生找出了6种计算“7+5”的方法,可以引导学生对其整理、归类:生1、生2、生6的方法可以归为一类,它们都是根据算式的内部关系构造出的算法,进一步细分,生1、生2根据加数特点利用“凑十”法计算,生6根据数的顺序通过数数解决问题。生3、生4、生5的方法可以归为一类,它们都是根据这个算式与其它算式的关系来推出结果的,进一步细分,又可分为变第一个加数、变第二个加数、两个加数同时变等几种方法。当然,对于一年级的儿童,我们不可能使其形成如此完整、清晰的认识,但我们仍可以有意识地引导学生对各种方法进行简单的反思、比较,使其对这些思路有所领悟,有所体会,有所发现,从而使每一个学生获得不同程度的发展。
  
  三、 “算法多样化”与运用最优化
  
  提倡“算法多样化”更要注重算法的最优化。算法最优化是学生个体学习、体验感悟的过程,不是群体或教师的优化,是个体学习、容纳他人计算方法的过程,是个体思维发展、提高的过程。如果不对算法进行优化,那么,我们的学生就不会有收获,不会有提高。
  通过优化,学生能在自己原有水平上得到发展,那么引导学生优化就是很有必要的。在优化算法的过程中,教师必须注意两点:第一,优化的主体是每一个学生,要尊重学生的想法,教师应把选择判断的主动权交给学生,优化的过程是学生自我完善的过程,产生修正自我的内需,从而“悟”出属于自己的最佳方法,从而加以运用。教师在评价算法时,不要讲“优点”,而要讲“特点”,优点让学生自己去感悟,这才能达到优化的目的。