ARTICLE · 1233362
从算得对到想得通——小学数学计算教学的深层重构
第一篇:计算教学,究竟应该教会孩子什么?
引言:两个都算对的孩子,可能经历了完全不同的数学学习
一道数学题:204-98=?
第一个孩子拿起笔,熟练地列出竖式,经过退位计算,很快写出了106。第二个孩子没有列竖式,而是先计算204-100=104,再把多减去的2加回来,同样得到106。两个人都算对了,教师应该如何判断他们的数学理解?
有人可能认为,第二个孩子能够灵活计算,说明他的理解更深入。但如果继续追问,我们也许会发现,第一个孩子能够清楚解释退位过程中各个数位的数量变化,而第二个孩子只是机械模仿了某种简便计算技巧。也可能出现相反的情况:第一个孩子只记住了退位步骤,第二个孩子却能够说明为什么多减了2就必须加回2。
还有第三种可能:某个孩子最终写错了答案,但他的计算思路、数量关系和算法依据全部正确,只是在最后一步出现了偶然的计算失误。
于是,一个值得重新思考的问题出现了:计算正确,究竟能够证明孩子理解了什么?计算错误,又能说明孩子没有理解什么?
长期以来,小学数学计算教学十分重视正确率、熟练度和计算速度。这些目标当然有价值,没有一定的计算能力,学生很难顺利开展后续的数学学习。然而,如果我们把计算能力主要理解为快速、准确地得到答案,就可能忽略计算活动中更重要的知识结构、数量关系与思维发展。
孩子在计算过程中,究竟经历了什么?一个算法为什么成立?不同算法之间为什么能够相互转化?当数字、单位或问题条件发生变化时,学生为什么有时能够灵活应对,有时却突然不知道如何下手?
这正是本合集希望持续研究的问题。
计算教学需要从关注答案的正确,进一步走向关注数学理解的发生。
一、计算教学最值得警惕的,不是孩子算错,而是我们误判了孩子的理解
设想一节三位数乘两位数的计算课。教师示范竖式计算,学生模仿练习,经过反复训练,大部分孩子都能够独立完成类似题目。课堂练习正确率很高,教师也顺利完成了教学任务。
但如果此时追问:为什么乘法竖式的第二行要向左错开一位?为什么第二行写在十位上的数字,表示的不是几个一,而是几个十?学生可能会出现完全不同的回答。
有人能够结合十进制计数原理说明,有人只能回答“老师就是这样教的”,还有人会说“如果不错开,答案就不对”。这些回答的差异,揭示了同一个事实:学生能够执行算法,并不意味着他们已经理解算法背后的数学关系。
然而,我们也不能走向另一个极端,把每一个不能立即解释算法的孩子,都判定为缺乏数学理解。一个学生可能已经形成了有效的程序性知识,却暂时不善于用语言表达;另一个学生可能说得头头是道,却无法在具体计算中正确运用。
因此,理解的判断不能依赖单一表现。除了观察孩子能不能算对,还需要看他能否解释关键步骤,能否比较不同算法,能否判断结果是否合理,以及能否在条件变化时调整计算方法。
例如,一个孩子熟练计算25×16=400,我们可以把16换成18,看看他会怎样处理。如果他只会机械寻找“凑100”的数字,就可能在新的情境中失去方向;如果他理解乘法的分配律与数量关系,就有机会使用25×(20-2),得到500-50=450。
这里的关键,并不是哪种计算技巧更加高级,而是学生能否理解自己的操作为什么成立。
计算正确率告诉我们,学生在特定任务中完成得怎么样;对计算过程的持续观察,才能帮助我们进一步认识他的数学理解。
二、计算的本质,不只是得到答案,而是改变数量的表达方式
我们不妨重新审视一个最普通的计算:37+28。
为什么可以把37拆成30+7,把28拆成20+8?为什么又可以把30和20放在一起,把7和8放在一起?这些过程看起来十分自然,以至于成年人往往不再追问其中的道理。
但对于刚刚学习计算的儿童而言,这里面包含着十分重要的数学思想。37和28并不是两个等待被机械处理的数字,而是两个可以采用不同方式进行组织和表达的数量。
37+28,可以改写为(30+20)+(7+8),进一步得到50+15=65。也可以把28分成3和25,先计算37+3=40,再计算40+25=65。还可以先计算37+30=67,再减去多加的2,得到65。
这些算法表面上不同,却有一个共同特点:数量的表达形式不断改变,而原来要求的和始终没有改变。
这件事情值得深入研究。因为计算活动中一个重要的数学能力,就是在保持数量关系或运算结果不变的条件下,主动改变数字的组织方式,使原本不容易处理的问题转化为更容易处理的问题。
竖式计算也是如此。它不是与灵活思考相对立的机械程序,而是把复杂的数量处理组织成一套稳定、可重复操作的方法。问题不在于竖式本身,而在于学生是否知道竖式为什么能够这样组织。
从这个意义上说,算法并不是一串孤立的步骤,而是一种将数学关系转化为可执行操作的结构。
当教师只要求学生记住步骤时,学生获得的是一种操作路径;当教师帮助学生理解每一步改变了什么、保留了什么、为什么必须如此改变时,学生才有机会逐渐掌握创造和调整算法的能力。
这也意味着,我们需要重新理解计算教学中的“算理”。
算理不应该只是算法教学开始之前附带的一段解释,然后在熟练训练中逐渐消失。它应该持续存在于学生的计算活动中,帮助学生判断某种变形是否合法,某个结果是否合理,以及一种新算法为什么值得采用。
理解计算,就是理解数字可以怎样改变表达,而数学关系为什么能够在这些改变中保持成立。
三、计算的起点,可能藏在一个不起眼的问题里:以什么为“1”?
我们通常认为,计算从认识数字和学习运算符号开始。但如果进一步追问,就会发现,很多计算困难都与一个更加基本的问题有关:学生究竟在数什么,又把什么当作计数单位?
计算35+27时,为什么个位上的5和7可以直接相加,十位上的3和2也可以直接相加?
因为个位上的5和7都表示以“一”为单位的数量,而十位上的3和2则表示以“十”为单位的数量。我们实际上是在合并相同单位所表示的数量,而不是随意把数字排列组合。
当5个一加上7个一得到12个一时,为什么能够写成1个十和2个一?因为在十进制计数系统中,10个一与1个十表示相同的数量。所谓“进位”,就是改变数量的单位组织方式,而不是凭空增加一个数字。
如果孩子只记住“满十进一”,他当然可能把题算对。但当我们让他使用小棒、计数器或者不同的数位表达方式解释这个过程时,他对“为什么能够进一”的理解才更容易显现出来。
这个问题并不只存在于低年级整数计算中。
学习小数加减法时,为什么必须对齐数位?因为相同数位对应相同的计数单位。学习分数加法时,为什么1/2+1/3不能直接得到2/5?因为二分之一与三分之一采用的分数单位不同,不能把分母和分子分别相加,当作合并同单位的数量。
把1/2改写成3/6,把1/3改写成2/6,两个分数便能够以共同的六分之一作为计数单位进行合并。于是,1/2+1/3=3/6+2/6=5/6。
从整数到小数,再到分数,数字的表示形式发生了变化,运算对象变得更加复杂,但某些深层问题始终存在:我们把什么作为一个单位?不同的单位之间可以怎样转换?单位发生变化时,数量关系如何保持?
这为小学六年的计算教学提供了一条值得研究的贯通线索。
孩子学习计算,不只是学习处理不同的数字,更是在不断学习建立单位、识别单位、转换单位和重新组织数量。
四、重新理解退位:孩子借走的究竟是什么?
让我们观察一道减法题:302-178。
许多孩子能够通过竖式完成计算,但也有一些孩子在连续退位时容易出错。尤其是遇到被减数中间有0的情况,他们经常不知道应该从哪里退位,也弄不清已经退过位的数字应当怎样改变。
传统教学通常会反复强调操作规则,例如“个位不够减,就向十位借;十位没有,就向百位借”。这样的规则可以帮助学生完成计算,但仅靠记忆规则,也可能使退位成为一连串难以理解的数字操作。
如果我们从数量结构重新研究这道题,情况就不同了。
302表示3个百、0个十和2个一。现在个位上的2个一不够减去8个一,而十位上又没有十可以直接重新分组,于是需要把1个百重新组织成10个十,再把其中1个十重新组织成10个一。
此时,302便可以表示为2个百、9个十和12个一。整个过程中,302表示的总数量从未发生改变,改变的只是百、十、个之间的组织方式。
现在再减去1个百、7个十和8个一,就能得到1个百、2个十和4个一,也就是124。
孩子需要理解的,并不只是“从百位退到十位,再从十位退到个位”的操作顺序。更重要的是,为什么1个百可以变成10个十,为什么1个十可以变成10个一,以及重新组织后的数量为什么仍然等于302。
当这些关系逐渐清楚,连续退位便不再是一套任意规定的操作,而成为一种可以解释、可以验证的数量重组。
这还会帮助学生理解另一个问题:为什么302-178,也可以先计算302-180,再加回2?
因为我们把178暂时改变成了更容易计算的180,但这意味着比原来多减了2。为了恢复原来的数量关系,就必须把多减的2加回来。
这两种算法看起来完全不同,一种改变数位单位的组织方式,另一种改变减数的表达方式,却都在努力完成同一件事:寻找便于计算的形式,同时保持原来计算结果不变。
因此,教学不能把竖式退位与灵活计算变成彼此竞争的两种方法。我们更应该帮助学生发现,它们分别利用了怎样的数学关系,又为什么都能够得到正确答案。
五、乘法竖式的第二行,为什么要向左移动一位?
再来看一道普通的乘法题:24×13。
按照常见的竖式算法,先计算24×3,得到72,再计算24×10,得到240,最后相加得到312。在书写竖式时,第二个部分积往往从十位开始书写,于是学生看到的就是第二行向左错开一位。
如果教师只是告诉学生“第二行要向左移一位”,学生便可能把这种书写方式理解为必须遵守的格式要求。然而,这一位移动并不是排版规则,而是数位意义的体现。
13可以表示为10+3。因此,24×13就是24×(10+3),根据乘法分配律,可以写成24×10+24×3。
现在,竖式中的两行部分积便获得了明确的数学意义:72表示24的3倍,240表示24的10倍。第二行从十位开始写,是因为这部分计算所得到的数量以十为单位进行表达。
这个解释还能继续向前延伸。
如果把13换成103,竖式中的部分积又应该怎样安排?如果将24×13改写为13×24,虽然竖式的计算顺序不同,最后为什么仍然得到312?如果把24×13看作24个13,或者13个24,又能怎样解释其中的数量关系?
这些变化能够帮助学生逐渐发现,乘法并不是单纯的数字排列与操作过程,而是对数量关系的一种组织。
更进一步,学生还可以比较24×13与24×(10+3),发现竖式计算实际上把分配律转化成了一套便于执行的书写程序。
一个成熟的算法,往往凝结着许多已经被压缩的数学思考。
计算教学的重要任务之一,就是在适当的时候重新展开这些被压缩的思考,让学生不仅知道算法怎样运行,还能够理解它为什么成立。
当然,这不意味着每一次计算都要重新进行漫长的算理推导。随着理解的稳定和练习的积累,许多计算步骤完全可以逐渐自动化,从而为更复杂的思考释放注意力。
问题在于,自动化应该建立在可以不断调用和修正的数学理解之上,而不应成为学生停止追问的理由。
六、除法为什么能够同时放大?一个规则背后的数学世界
小学高年级学习小数除法时,学生会遇到这样的计算:48÷0.6。
通常的处理方法是把被除数和除数同时扩大到原来的10倍,得到480÷6=80。这一规则看起来十分方便,但为什么同时扩大10倍,商就不会发生变化?
如果学生仅仅记住了“把除数变成整数,被除数也跟着移动小数点”,那么他的操作很可能高度依赖熟悉的题目形式。一旦出现分数除法、复杂的小数关系或者实际问题,就可能无法解释类似的变化。
我们不妨把48÷0.6放到一个具体情境中。
有48升饮料,每0.6升装一瓶,一共能装多少瓶?这里的除法,实际上是在询问48升里面包含多少个0.6升。
如果我们把计量单位统一改成分升,那么48升变成480分升,0.6升变成6分升。被除数和除数的数值都变大了10倍,但48升饮料的总量没有变化,每瓶饮料的容量也没有变化,因此瓶数自然不会改变。
从纯粹的运算关系看,48÷0.6=(48×10)÷(0.6×10)。如果原来的商是某个数,那么被除数与除数同时乘以相同的非零数,原有的倍数关系仍然成立,所以商保持不变。
这比记住小数点应该向哪里移动更进一步。孩子开始理解,除法不仅是一种求商的程序,也可以表达包含关系、倍数关系以及两个数量之间的比。
现在,再看3/4÷1/8。
我们可以追问:3/4里面包含多少个1/8?当3/4被改写为6/8时,答案便显现出来:它包含6个1/8,因此商为6。
小数除法与分数除法虽然在形式上差异很大,却都可以通过改变数量的表达形式,让原本不容易识别的关系变得清楚。
这也提示我们,小学计算教学最值得贯通的,不只是算法之间的相似性,更是不同算法背后共同的数学关系。
七、一个错误答案,有时比十道正确答案更值得研究
有一个孩子计算2.4×0.3,写出了7.2。
教师看见这样的答案,很容易判断为“小数点位置错误”,随后要求学生重新记忆小数乘法的计算规则。但如果我们只停留在这个层面,就可能错过一次理解孩子数学思维的机会。
孩子为什么会写出7.2?他是否直接把24×3=72作为依据,却没有理解两个因数的数值变化?他是否知道0.3比1小,却仍然认为乘法总会使结果变大?又或者,他已经理解小数乘法的意义,只是在最后确定小数点位置时出现了偶然失误?
这些不同原因,可能产生完全相同的错误答案。如果不进一步观察和追问,我们就无法确定怎样的教学干预更加合适。
例如,我们可以先让孩子判断2.4×0.3应该比2.4大还是小。再追问0.3表示3个十分之一,2.4的3个十分之一大约是多少,最后请他解释2.4×3=7.2与2.4×0.3之间存在什么联系。
如果学生能够意识到0.3是3的十分之一,就有机会理解2.4×0.3=(2.4×3)÷10=0.72。此时,小数点的位置不再由一条孤立的口诀决定,而是受到数量关系的约束。
不过,这里仍然需要保持谨慎。教师提出几个恰当的问题,孩子能够在提示下得到正确答案,并不能立即证明他的理解已经稳定。
我们还需要观察他能否独立处理类似问题,能否在不同情境中使用同样的关系,是否能够解释自己的错误并主动修正。
对于数学教师而言,这种观察能力十分重要。因为教学不能仅仅针对学生最终写出的答案,而必须尽可能接近那个答案产生的过程。
同一个错误,可能来自不同的理解状态;同一个正确答案,也可能由不同的认知路径产生。
如果我们忽略这种差异,就容易用统一的重复训练应对不同的学习困难,最终让计算练习越来越多,而某些关键问题始终没有解决。
八、计算教学怎样从“练习算法”走向“研究关系”?
让我们设计一个具体的课堂活动。
教师给出一道题:25×48。
按照通常的计算教学思路,学生首先列竖式,再进行适量的巩固训练。如果教学重点是简便计算,教师可能直接告诉学生,遇到25可以想办法凑100。
但我们能否把这道题设计成一次关于数量关系的探索?
首先,不要求学生立即计算,而是请他们估计结果的大致范围。因为48位于40和50之间,所以25×48一定大于25×40,也小于25×50,即结果位于1000和1250之间。
估算的意义不只是得到一个近似结果,而是建立一种对精确答案的合理约束。之后无论采用哪种算法,结果都应该接受这一数量范围的检验。
接下来,让学生自由选择计算路径。
有的学生把48拆成40+8,得到25×40+25×8=1000+200=1200。有的学生把48拆成50-2,得到1250-50=1200。还有学生发现48可以写成4×12,于是把25×48改写为(25×4)×12=100×12=1200。
现在,课堂上出现了三条不同的计算路径。
我们不急于判断哪一种最好,而是让学生讨论:每条路径究竟改变了什么?为什么这样改变不会影响最后的乘积?什么情况下某一种方法会更加方便?
经过讨论,学生可能逐渐发现,简便计算的关键不在于记住若干特殊数字,而在于识别数字中可以利用的关系,并通过合理的变形降低计算难度。
此时,教师还可以继续改变问题。
如果把48换成49,能不能不重新列竖式,直接算出25×49=1225?如果把48换成4.8,为什么25×4.8=120?如果把25换成26,原来的某些巧算方法是否仍然适用?
变化不断出现,学生也不断面临新的判断。原先有效的方法可能继续有效,也可能需要调整,而每一次调整都必须受到数学关系的约束。
这就是我们希望培养的一种重要计算能力:当条件改变时,学生能够重新组织已有知识,而不是只能等待教师示范新的操作规则。
在这种课堂中,计算依然需要熟练训练,但练习不再只是重复相同类型的操作。它还承担着比较、验证、迁移和发现新关系的任务。
一道普通的计算题,也因此获得了更丰富的学习价值。
九、怎样判断孩子已经从“算得对”走向“想得通”?
如果我们希望改变计算教学,就必须同时改变评价计算学习的方式。
单纯增加“说一说算理”的环节,并不能自动解决问题。有的学生可以背诵一段完整的算理解释,却不知道如何应用;有的学生表达不够流畅,却能够在新的问题中灵活调整自己的算法。
因此,我建议从三个相互关联的方面,持续观察学生的计算理解。
第一个方面,是能否说明关键操作的依据。
比如,孩子能否解释为什么35+27需要进位,为什么302-178需要重新组织计数单位,为什么乘法竖式的第二行要从十位写起。这里关注的不是学生能否背出规范答案,而是他是否建立了操作与数学关系之间的联系。
第二个方面,是能否在变化的条件下调整方法。
例如,学生会计算25×48之后,能否合理处理25×49、25×4.8或者26×48?如果数字发生变化,他是否能够判断原来的策略还能不能使用,又需要作出怎样的调整?
第三个方面,是能否发现并修正不合理的结果。
当孩子得到2.4×0.3=7.2时,他能否借助估算、数量关系或者其他方法,发现结果存在问题?发现问题之后,他能否判断错误发生在哪里,并说明为什么需要修正?
这三个方面并不是三个彼此独立的评分项目,而是从不同角度观察学生能否建立和使用数学关系。当然,正确率、熟练度和运算效率仍然重要,它们与解释、迁移、自我检查共同构成较为完整的计算能力。
教师也不需要每节课都实施复杂的评价。一个恰当的追问、一个小幅变化的题目、一次错误分析,都可能提供有价值的学习证据。
更重要的是把这些证据连接起来,而不是凭借某一次回答,就对孩子作出“理解了”或者“没有理解”的终局判断。
儿童的数学理解可能在不同任务中呈现出不一致的状态。一种关系在熟悉情境中已经能够稳定使用,换一种情境却仍需要新的学习;某个算法已经十分熟练,其中隐藏的意义却可能尚未被充分认识。
所以,我们需要把数学理解看作一个不断形成、接受检验和持续发展的过程。
十、小学六年的计算教学,需要一条能够贯通的主线
小学计算教学涉及整数、小数、分数,以及四则运算和各种运算性质。不同年级有不同的教学目标,不同教材也有相应的内容安排。
但如果我们只按照教材章节逐一完成教学,学生可能获得许多局部正确的知识,却没有充分建立这些知识之间的联系。
例如,一年级学习十以内和二十以内加减法,二年级学习更复杂的加减计算,三年级开始深入学习乘除法,之后又不断接触小数、分数及其运算。这些知识的表达形式不断变化,但“以什么为单位”“数量怎样组合与分解”“什么关系在运算变形中保持不变”等问题,却可以反复出现。
因此,计算教学的整体设计,应该在尊重儿童发展特点的前提下,持续推动某些核心理解不断深化。
低年级可以更多借助具体操作,让儿童经历数量的组合、分解和单位重组。中年级可以帮助学生逐渐把直观操作与运算规律建立联系,理解竖式、运算律和不同算法的数学依据。
到了高年级,随着小数、分数以及更复杂数量关系的出现,学生需要进一步学习转换单位、识别不变关系、选择有效策略,并比较不同运算表达方式。
这里并不是说低年级不需要推理,高年级就不再需要操作。恰恰相反,随着数学问题的复杂程度变化,直观经验、符号表达、关系推理和实际应用需要以不同方式不断重新联系。
我们还需要重新思考口算、笔算、估算和简便计算之间的关系。
它们不应只是四类并列的技能训练。口算可以帮助学生发展数感与灵活的数量组织能力,笔算可以帮助学生掌握稳定而系统的运算程序,估算可以建立结果判断的依据,简便计算则让学生在具体情境中主动利用运算关系。
当这些活动围绕共同的数学问题相互支持时,计算教学才更有可能从零散的技能训练,发展为具有内在联系的知识学习。
这也对教师提出了新的要求。
备课时,除了思考“今天应该教会学生哪种算法”,还需要研究:“今天的计算任务能够帮助学生建立什么关系?学生原有的认识可能在哪里遇到困难?我怎样利用这种困难推动新的理解?又通过什么证据判断理解是否发生了变化?”
如果这些问题能够进入日常备课,计算教学的改进就不再只表现为增加几道趣味题或者设计一段精彩的算法讨论。它将逐渐改变我们对数学知识、儿童学习和课堂教学之间关系的认识。
结语:当孩子知道为什么这样算,计算才开始拥有更深的意义
回到文章开头的那道题:204-98=106。
当一个孩子能够熟练得到106,我们当然应该肯定他的计算能力。但如果他进一步知道,为什么可以把98看成100再加回2,为什么竖式退位能够保持数量不变,又为什么两种不同算法最终得到相同的结果,那么这道题对他的意义就发生了变化。
它不再只是一道已经完成的计算题,而成为理解数量关系、探索不同表达方式、比较算法和发展数学判断的机会。
更重要的是,当下一次遇到没有学过的计算问题时,孩子可能不再只问“老师有没有教过这种题”,而是开始主动思考:“我能不能改变它的表达方式?原来的什么关系必须保持?怎样判断自己的方法是否成立?”
这种变化,正是我们希望在计算教学中持续促进的。
当然,理解不能替代必要的熟练训练,灵活计算也不能成为忽视基本算法的理由。数学学习需要在意义理解与技能发展之间建立持续联系,让熟练成为理解的支持,让理解又不断扩大熟练技能可以发挥作用的范围。
计算教学的深层重构,不是取消算法,而是让算法重新显现它所承载的数学关系;不是放弃正确率,而是不让正确率成为理解的终点。
这也是《从算得对到想得通——小学数学计算教学的深层重构》这个合集的起点。
接下来,我们将继续深入小学计算教学中的具体问题:为什么需要进位和退位?乘法口诀背后隐藏着怎样的关系?除法竖式究竟在记录什么?小数点为什么可以移动?分数运算中的单位如何转化?估算怎样帮助学生判断结果?为什么简便计算不能只教技巧?又怎样从孩子的典型错误中发现数学理解的形成过程?
我们希望通过一个个具体问题,逐步建立一套贯通小学六年的计算教学研究体系。每一篇都尽可能从真实的数学困难出发,在深入分析中形成解释,再回到课堂中寻找可以实施和检验的方法。
最终,我们希望回答的,不只是“怎样让孩子计算得更快、更准确”,而是一个更值得长期研究的问题:
当孩子学习计算时,我们究竟怎样帮助他从执行一套算法,走向理解数学关系,并逐渐获得独立创造和调整计算方法的能力?
因为小学数学计算教学最值得期待的成果,不只是孩子面对熟悉的数字能够迅速写出答案。
而是当一个陌生的问题出现时,他依然知道,可以从哪些关系入手,怎样一步步把问题转化为自己能够理解和解决的形式。
从算得对,到想得通,再到能够自己探索新的算法与问题——这才是我们希望开启的计算学习之路。
往期好文:
你积累了这么多年经验,值得拥有一本属于自己的专著?——寻找知识生产事业合作伙伴:共同打造一本原创专著+一门配套课程!
为什么数学需要括号?——一对符号背后,隐藏着数学抽象的深层秘密
小学生还没有学习函数,为什么他们其实早就在使用函数思想?——从算出一个答案,到发现两个数量之间的关系
孩子不是不会思考,而是思考走到一半就停了——一份数学营前测揭示的学习力问题
— END —
感谢您的阅读。我是阳涌,一名长期扎根在教育现场的学习者与实践者。在这里记录我对学习、教育与AI的持续思考,也记录那些从真实问题中一点点长出来的新理解。希望我们不只是获得更多答案,而是在不断学习中,成为一个持续更新自己的人。欢迎点赞、分享、关注 🌱















































































