算術方法

☰ 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