算术方法

☰ Contents

做一个计算有两条路,而流利多半就是在两条路之间挑得快。心算方法把数字改造成更容易的 —— 它快,但它指望数字配合。书面方法不看数字长什么样,按平稳的代价一路碾过去。

两条路踩着同一个想法:位值。进位、借位、拆分和翻倍,全是同一套十的打捆与拆捆,只是记法不同。这一页把整条阶梯走一遍,每一级配一道例题,和它成立的理由。

加法从哪里开始?

加法从小到能看清、能数清的量开始,第一条规则是从较大的数往上数。二十以内的加法就是从这里开始的。3 + 9 的话,从 9 开始往上数三个:10、11、12,所以 3 + 9 = 12。从较大的数开始之所以成立,是因为顺序不会改变总数,而且数三次比数九次更不容易出错。拿走是同一个想法倒过来用:12 − 5 的话,从 12 倒着数五步到 7。像 8 + 5 这样和超过十的时候,把较小的数拆开,先用它的一部分凑成十:8 + 2 = 10,再加 3 就是 13。这些和都留在二十以内,学习者可以用计数物一个一个验算。减法也能验算加法:13 − 5 = 8 正好回到出发的地方。

乘法和除法的起点一样,是摆法而不是口诀。相等的组敲定乘法数的是一样大的组,行与列把这些组摆成一个长方形,让 3 × 4 和 4 × 3 肉眼可见就是同一个长方形侧了个身,平均分再把除法引进来,作为这个长方形倒着回答的问题。乘法表指南讲怎么把那套口诀练到脱口而出 —— 下面的一切都以此为前提。

6 × 4 = 24
6 行,每行 4 个,也是 24:同样的点,只是转了个方向。乘的顺序不同,个数不会变。 完整课程: 行与列

什么是凑十的数对,它们有什么用?

凑十的数对是两个加起来等于十的整数:1和9,2和8,3和7,4和6,5和5,还有0和10。一共只有六对,把它们背下来的孩子能用两小步跨过十,不用一个一个数上去。就拿 7 + 6 来说,7 还差 3 才凑成十,那就把 6 拆成 3 和 3。这样 7 + 3 = 10,10 + 3 = 13。凑十的数对用一个十格架——一排十个格子——来教这些数对。往架子里放 7 颗珠子,还剩三格空着,所以 7 + 3 = 10。空格子就是搭档,不用数满格子也能一眼看见。

1046

10 − 4 = 6,这就是 4 还差的数

找出 7 还差多少才到十。

跨过十来减也是同一个想法,只是倒过来。16 − 9 的话,先减 6 落到 10,再减剩下的 3 到 7,所以 16 − 9 = 7。缺一个数的时候也一样:3 + ? = 10 的答案是 3 的搭档,也就是 7。每个答案都能用它来自的那条事实来验算,因为 7 + 6 = 13 也给出 13 − 6 = 7 和 13 − 7 = 6。这三条事实是一家人。

107?
7 + ? = 10。从整体里拿走部分:10 − 7 = 3。 完整课程: 10 的分与合

“多多少”其实也是减法,虽然看着不像。一排有 12 颗弹珠,另一排有 8 颗,把两排的弹珠一对一配起来。较长那排有 4 颗配不到对,所以那排多 4 颗,12 − 8 = 4 说的是同一件事。多和少就是从这种配对开始的,因为它不用数两排就能看出哪排更长。数大一点的时候,改成从较小的数往上数:8数到10是2,10数到12再是2,所以差是4。

把每个正方形和上面的配成一对。有 2 个没有配对。 完整课程: 多一些和少一些

你来试试

104?

4 + ? = 10

105?

5 + ? = 10

106?

6 + ? = 10

怎么在脑子里做加法?

要在脑子里做加法,把这道加法换成答案相同、但更容易的加法,再算那道容易的。最常见的换法是把每个数拆成十位和个位。58 + 26 的话,先加十位:50 + 20 = 70,再加个位:8 + 6 = 14,最后把两部分合起来:70 + 14 = 84。这样成立,是因为不管怎么重新组合加法里的各部分,总数都不会变。当一个数正好在十的倍数前一点时,凑整比拆分更快。58 + 29 的话,改成加 30 再退回 1:58 + 30 − 1 = 87。下面这五个动作都是这个想法的不同版本。先估一下就能抓住失误:58 + 29 接近 60 + 30 = 90,所以 87 是合理的答案,77 或 97 就不是。

40506070809083 − 47 = 368347d = +0

两端都滑动+0:83 − 47 = 36,差距不变,因为在减法两端都加上d会相互抵消,(83 + d) − (47 + d) = 36

滑动两端,直到被减去的数是10的倍数

05010047

大于等于中点的值向上舍入,小于中点的值向下舍入,因为中点到两边的距离相等

找出最小的、会进位的数

重排。任意顺序相加是这一切的许可证:7 + 24 + 3 变成 7 + 3 + 24 = 34,因为加法不在乎你按什么顺序给它。

拆分。拆开来加沿着位值把数掰开 —— 46 + 37 → 40 + 30 = 70,再 6 + 7 = 13,所以 83。这就是竖式加法读出声来,从左往右。

过桥。凑十过桥拿十当踏脚石:8 + 5 → 8 + 2 = 10,再 3 → 13。它是早期算术里最有用的一个动作,因为十正是记法换挡的地方。

405060+347
快算 47 + 8:把 8 拆成 3 + 5。于是 47 + 3 = 50。 完整课程: 凑十过桥

翻倍。翻倍与近似翻倍把 7 + 8 变成 7 + 7 + 1 = 15。翻倍是所有加法口诀里想起来最快的,所以离一个翻倍只差一的题几乎白送。

凑整再补回。凑整再补回是大人用得最多的:198 + 47 → 200 + 47 = 247,再拿回 2 → 245。

405060708090100110120+ 29+ 30− 14545 + 29 = 74
跳 40 再退回 11,也落在 74。跳哪个整十数都行,但最接近的整十数要退回的最少。 完整课程: 先凑整再调回
这五个动作是同一张许可证的不同用法:你可以把一个计算换成任何一个答案相同的计算。凑整再补回先加二再减二;过桥把一个数拆成够到十的那部分和越过十的那部分。没有任何东西被近似 —— 账记得分毫不差,所以答案分毫不差。

你来试试

405060+545

45 + 8

708090+476

76 + 6

不用“拿走”的减法

减法有它自己的两个动作,而且都不是“拿走”。往上数来减把 82 − 67 读成 67 到 82 的差距:三步到 70,再十二步,所以是 15。收银机会算账之前,店主找零用的就是这一招。

5556575859606162636465+2+3
数 2 到 60,再数 3 到 63。相隔 5。 完整课程: 往上数来做减法

差不变是更有力的那个。两个数一起挪同样的量,它们之间的差距原封不动,所以 82 − 67 = 85 − 70 = 15。挑一个能让第二个数变整的挪法,减法就不再是活了。

25903084
84 − 30 = 54。距离从没变过,所以 83 − 29 = 54。 完整课程: 一样的差

你来试试

10954772

72 - 47

10954967

67 - 49

竖式加法究竟凭什么成立?

竖式加法成立,是因为每一位只能装一个数字,而某一位上凑够十个,就变成下一位的一个。对齐数位是第一步:个位对个位,十位对十位,百位对百位,这样只把同类相加。然后从右边开始,逐位相加。365 + 278 的话,个位是 5 + 8 = 13,写 3,向十位进 1。十位是 6 + 7 + 1 = 14,写 4,向百位进 1。百位是 3 + 2 + 1 = 6,答案是 643。进的那个 1 不是花招:13 个一确实就是 1 个十和 3 个一。位数不同的数对齐时,要按位对齐,而不是靠左对齐,所以 57 要对齐在 1,204 的最后两位下面。减法能倒过来验算加法:643 − 278 = 365。

十位个位077 已放下的个数

个位不足十个时,个位数字记录它们的个数,十位是 0 —— 还没有达到 10 = 1 个十

放下十个一,再把这一捆拖进十位列

426+3517
个位对个位,十位对十位。从个位开始:6 + 1 = 7。 完整课程: 对齐竖式

进位在两位数加法里是这样:47 + 38:7 + 8 = 15 个一。其中十个捆成一个十,进过去;5 留下。然后 4 + 3 + 1 = 8 个十。答案 85。

471+2875
再加十位:进位的 1,加 4 和 2。写 7。答案是 75。 完整课程: 进位

连着进位不止一列展示那串连锁 —— 一次进位可以触发下一次进位,而这发生时规则分毫不变。

十位上方那个小小的 1 不是记账符号。它是一个货真价实的十,写在写十的地方。这一点一旦落地,进位就不再是一个要记住的步骤,而成了唯一可能发生的事。

你来试试

49+15

49 + 15

17+46

17 + 46

借位,以及隔着零借位

借位是倒着跑的进位:从旁边一列拆出一个十、换成十个一,这一列的减法就做得动了。52 − 27:2 − 7 不够减,就取一个十:12 − 7 = 5,再 4 − 2 = 2。答案 25。

52124−2725
现在两列都能减了:12 − 7 = 5,4 − 2 = 2。答案是 25。 完整课程: 借位

隔着零借位处理让人卡壳的那种情况。300 − 176:十位没有东西可借,于是那个百跨过来、被拆了两次 —— 2 个百、9 个十、10 个一 —— 然后减法照常跑完,得到 124。冒出来的那排九不是戏法;一个百拆成十和一,长的就是那个样子。

3041492−127
现在十位有得借了:10 降到 9,个位变成 14。 完整课程: 隔着 0 借位

你来试试

8401−7135

8401 - 7135

400−129

400 - 129

怎么在脑子里做乘除?

要在脑子里做乘除,也是先改造数字,再计算。乘十和乘一百是关键:乘以 10 时每个数字都左移一位,所以 47 × 10 = 470。这条规则说的是位值,一旦数里有小数点,“添个零”的办法就不管用了。遇到更大的乘积,把一个数拆成十位和个位。6 × 47 的话,先算 6 × 40 = 240 和 6 × 7 = 42,再相加:240 + 42 = 282。这样成立,是因为 47 就是 40 和 7 合起来,六组 47 也就是六组 40 加六组 7。除法也能拆,但只能拆被除数:84 ÷ 4 = 80 ÷ 4 + 4 ÷ 4 = 20 + 1 = 21。把 4 拆成 2 和 2 会得到错误答案。乘回去能验算除法:21 × 4 = 84。

5 × 4 = 20

同样的点,换了个方向:5×4和4×5

摆出24个点,再换一种摆法

4 hundreds5 tens
450
乘以 10 时,几个十变成几个百,几个一变成几个十。45 × 10 = 450。 完整课程: 乘除 10、100 和 1000

拆开来乘是主力:7 × 34 → 7 × 30 = 210,7 × 4 = 28,共 238。翻倍来乘靠翻倍两次或三次够到 ×4 和 ×8,和减半来除成对 —— 后者把 ÷4 变成减半两次。

13 × 7
长是 13 = 10 + 3。先算 10 x 7,得 70。 完整课程: 拆开来乘

拆开来除反过来把被除数掰成顺手的块:96 ÷ 4 → 80 ÷ 4 = 20,16 ÷ 4 = 4,所以 24。而凑整来估算是在你还没来得及相信一个错误答案之前就把它逮住的习惯 —— 38 × 52 ≈ 40 × 50 = 2,000,所以一个落在 200 或 20,000 附近的答案,是有个数字站错了位。除法指南把除法的心算一侧讲得更深。

竖式乘法和长除法怎么做?

长乘法一次只乘一位数字,把每个结果——叫作部分积——单独写成一行。列竖式乘只做一次,两位数乘两位数做两次。23 × 45 的话,第一行是 23 × 5 = 115。第二行是 23 × 40 = 920,所以要从左移一位的地方写起。把两行相加:115 + 920 = 1,035。之所以要错位,是因为那一行乘的是十。长除法反过来,从左边开始一位一位地除、乘、减、落下一位数字,不断重复。当除数比第一位数字大时,就取前两位数字。952 ÷ 7 的话,7 除 9 得 1 余 2,除 25 得 3 余 4,除 42 得 6,答案就是 136。乘回去能验算:136 × 7 = 952。

10 × 7 = 70N = 8414 = 2 × 784 ÷ 7 = 12= (70 + 14) ÷ 7 = 10 + 2

84 ÷ 7:70 作为十个 7 减去,剩下的 14 是 2 × 7,所以答案正好是 10 + 2 = 12

令 N = 91,把它分成 70 和剩下的部分

24 × 36 → 24 × 6 = 144,而 24 × 30 = 720,所以 864。

24×3614424 × 6+72024 × 30864
把两行相加:144 + 720 = 864。 完整课程: 两位数乘两位数

长除法是名声在外的那个,解药是知道每一轮在干什么:它恰好处理一个数位,从左边起,四个步骤原样重复。

  1. 除:除数装得进你正看着的这部分几次?
  2. 乘:那个数字乘除数,写在下面。
  3. 减:你处理过的部分还剩多少。
  4. 把下一位落下来,回到第一步。
12528 4 −48
12 × 4 = 48,装得进 52。除:上面写 4。乘:下面写 48。 完整课程: 长除法

852 ÷ 4 → 4 装进 8 是 2;落下 5,4 装进 5 是 1 余 1;落下 2 凑成 12,4 装进 12 是 3。答案 213。

最后一减没减到零的时候,剩下的是余数,余数讲的是拿它怎么办 —— 往上取整、往下取整,还是留成分数 —— 这是关于情境的问题,不是关于算术的。十三个孩子四人一辆车,是三辆车余一个人,而答案是四辆车。

长除法看着和别的算法不一样,因为它是唯一从左往右跑的算法。这不是怪癖:除法得先知道答案有多大才能动手,而大小就住在打头的那几位里。

你来试试

13377

377 ÷ 13

15585

585 ÷ 15

为什么先乘后加?

先乘后加,是因为乘法描述的是一个整体的量,不是排队等着轮到的一步。在 5 + 2 × 6 里,2 × 6 是两个 6,也就是一个量,12。所以算式是 5 + 2 × 6 = 5 + 12 = 17。想象一个铅笔盒,里面有 5 支散装铅笔和 2 盒装着 6 支的铅笔。先数出盒子里装的 12,再加上散装的。有了这条规则,任何人读这个算式都会得到同一个答案。除法和乘法是同一类的一步,所以也排在加减法前面:20 − 12 ÷ 4 = 20 − 3 = 17。真想先算加法,就用括号说明:(5 + 2) × 6 = 42。要检验读法对不对,把算式讲成一个小故事,看故事给出的数是不是一样。

(2 + 3) × 4 = 202 + (3 × 4)(2 + 3) × 4

这样算出的是(2 + 3) × 4 = 20,这并不是2 + 3 × 4的意思

按规则说的顺序做

3 + 4 × 2× acts first3 + 8then add11
没有括号,× 就先算:4 × 2 是 8,而 3 + 8 得 11。 完整课程: 先乘除后加减

先乘除后加减把这套论证做扎实,括号优先引入那套让你能故意问另一个问题的记号:(2 + 3) × 4 = 20。括号与四则混合再把每一级拼到一起,包括那个从左到右的陷阱 —— 8 ÷ 2 × 4 = 16,而不是 1。要是你就是为这个来的,有一页专门的运算顺序指南。

(10 − 4) ÷ 2 + 1brackets first6 ÷ 2 + 1then divide3 + 1then add4
四种一起上:括号得 6,除得 3,加得 4。 完整课程: 括号和四则运算

四个值得点名的错误

接下来通向哪里

这些方法全都站在整数与位值讲的那些列上,而且原样延伸过小数点 —— 小数与百分数(英文)阶梯从那里接手。追问哪些除法除得尽,会走进因数、倍数与质数(英文)。

轮到你了

三题试一试,点选作答。

47 + 38

82 − 47

34 × 5

常见问题

竖式加法里为什么要进那个 1?
因为一列只装得下一个数字,而十个某样东西,就是一个下一档的东西。47 + 38 加出 15 个一;其中十个一是一个十,这个十被进到十位那一列,5 留在原地。进上去的那个 1 不是随手的记号 —— 它是一个打好捆的十,写在写十的地方。
中间隔着零的时候怎么借位?
向下一个有东西的列去借,让中间的零变成九。算 300 - 176,百位借出一个百:那个百变成十个十,其中一个又变成十个一,于是 300 读作 2 个百、9 个十、10 个一。接下来一列一列往下减,什么也拦不住它:124。
心算减法最容易的路是什么?
从小的数往上数,而不是从大的数往下减。算 82 - 67,67 到 70 是 3,70 到 82 是 12,所以答案是 15。把两个数一起挪同样的量也有用:82 - 67 和 85 - 70 答案一样,因为两个端点一起动,它们之间的差距纹丝不动。
长除法一步一步怎么做?
除、乘、减、落下来,然后重复。852 除以 4:4 装进 8 两次,不剩;落下 5,4 装进 5 一次,剩 1;落下 2 凑成 12,4 装进 12 三次。答案 213。每一轮处理一个数位,这就是数字按顺序冒出来的原因。
为什么先乘后加?
因为一个乘法已经是一个打好包的量。在 2 + 3 x 4 里,3 x 4 的意思是三个四,是一个量 —— 十二 —— 所以和是 2 + 12 = 14。先做加法回答的是另一个问题,写出来是 (2 + 3) x 4 的那个。括号存在的意义,就是让你能故意去问那另一个问题。
心算方法比书面方法好吗?
谈不上谁好;它们回答的问题不同。心算方法把一个计算改造成一个更容易的,数字凑巧的时候最快,比如 198 + 47 按 200 + 47 - 2 来做。书面方法从不要求数字配合,所以什么规模都扛得动,代价平稳。流利的算术,就是一秒之内知道一道题配哪一种。
Mr. Chalk