主題

【教學】亞夜教你如何打算盤①:加減乘法

愛天使亞夜 | 2021-03-04 18:30:03

電子計算機已經十分普及了,
不管是插電的、光電板的、工程的各種電子計算機都很便宜好買,
甚至PC或手機應用程式也有免費計算機可用,
因此,
「算盤」這種東西距離我們似乎已經越來越遙遠了。

然而,
算盤這東東還真的不得不說,
它絕對是個偉大的發明。
至少在電子計算機出現之前,
算盤在對於數字的加減乘除計算上有著非常卓越的輔助性,
儘管現在回頭回去看算盤,
不過就是單純將「筆算」的過程給機械化而已。
然而就是這個「機械化」給人類帶來了進步,
怎麼說呢?
小時候應該很多人幹過7+5=13這種蠢事,
但如果你熟悉算盤的各種打法,
敝人跟你保證,
7+5=11這種腦殘行為絕對不會出現,
因為他永遠會是12。

——除非你看錯。



最基本的算盤是上1下4的五珠算盤,
示意圖如上。
而高級一點的可以到上二下五,
示意圖如上。
總歸來說,
功能都是一樣的。
算盤上的每一個直條表示一個位數,
橫樑以上每珠為5,
橫樑以下每珠為1。
因此上1下4的算盤上方能標示0、5而下方能標示0、1、2、3、4(根據珠數),
所以合計就能標示0~9的所有整數。
同樣的道理,
上2下5的算盤上方能標示0、5、10而下方能標示0、1、2、3、4、5(根據珠數),
因此就能標示0~16的所有整數,
換句話說,
這種算盤不僅能對應十進位,
甚至也能對應到十六進位。

算盤怎麼看呢?
學界的看法是:
以橫梁為基準,
貼近橫樑的珠子視為「有」,
遠離橫樑的珠子視為「無」。
不過敝人習慣是:
頂上去的珠子視為「有」,
退下來的珠子視為「無」。
兩者的差別只在於樑上的珠子敝人跟學界的看法是相反的,
但現在沒人在用算盤交易了啦,
所以如果只是自己基於興趣打算盤的話,
那麼只要自己知道並且不會讀錯那就沒問題了。

具體來說,
算盤的標示數字的方式為:

0:上0下0
1:上0下1
2:上0下2
3:上0下3
4:上0下4
5:上1下0
6:上1下1
7:上1下2
8:上1下3
9:上1下4

有沒有很簡單呢?

小趣事:
敝人小時候有學過珠心算,
在那個年紀時常常跟其他的小朋友或大人吵架,
吵的就是「數字」的手勢。
怎麼說呢?

大人或其他人所比的手勢如下:
0:握拳
1:食指
2:食指+中指
3:食指+中指+無名指
4:食指+中指+無名指+小指
5:拇指+食指+中指+無名指+小指
6:拇指+小指
7:拇指+食指
8:拇指+食指+中指
9:拇指+食指+中指+無名指

敝人當時所學的的手勢如下:
0:握拳(一樣)
1:食指(一樣)
2:食指+中指(一樣)
3:食指+中指+無名指(一樣)
4:食指+中指+無名指+小指(一樣)
5:拇指(無對應)
6:拇指+食指(同7)
7:拇指+食指+中指(同8)
8:拇指+食指+中指+無名指(同9)
9:拇指+食指+中指+無名指+小指(同5)
簡單說就是來自於五珠算盤。

這下你知道為什麼會吵架了吧?
因為比法不同一天到晚在誤會,
小孩子哪可能懂什麼「因為需求場合不同所以意義不同」的道理,
只會覺得「為什麼你們都跟我比的不一樣?既然我是對的所以你們一定都錯啦!」這樣。
至於為什麼會堅信自己是對的?
因為這套比法來源自算盤,
也因此這套比法不只用來表示數甚至可以用來算術而且屢算不誤,
因此當然會堅信這套比法是對的呀!

【加減法】

算盤的計法,
是上珠為5下珠為1來湊數。
所以加減法整個就很簡單,
直接對算珠進行調整就行。

記得,
每往上打一個下珠就是+1,
每往上打一個上珠就是+5。
反過來說,
往下打一個下珠就是-1,
往下打一個上珠就是-5。

舉例來說,
拿開頭的7+5舉例,
7的打法是上1下2,
5的打法是上1。
所以做運算的時候就是,
在上1下2的原則下在往上打一個上珠,
因此你打起來會變成上2下2。
上2就是10,
因此歸零進一,
於是十位數從上0下0變成上0下1,
個位數從上2下二變成上0下2,
有沒有注意到,
這表示的不就是12嗎?
因此敝人可以跟你保證,
7+5=13這種腦殘事只要學會算盤就絕對不會發生。

下珠的部分還有一些口訣,
+1=+5-4;
+2=+5-3;
+3=+5-2;
+4=+5-1。

這看起來是廢話,
其實這是在應付你「下珠不夠用」的情況時的打法。

例如9+3,
9的下珠為4,
下珠已經滿了你就不能再打3顆上去,
因此就要改成+5-2,
所以下珠退到2顆剩2顆然後打多1顆上珠。
然後這時你就有2顆上珠,
因此進1,
所以9+3=12,
有沒有很簡單呢?

減法也是一個道理,
只是會出現所謂的借位。
例如35-17,
要減去1上珠2下珠,
但5的下珠是0不夠,
所以+2=+5-3改成-2=-5+3,
也就是退掉一顆上珠後補上3顆下珠就是-2。
接著上珠沒有了,
所以為了能夠扣掉1個上珠就要借位,
2顆上珠扣1顆剩1顆,
於是個位數等於上1下3=8。
至於十位數,
因為本來是3,
借位扣1就剩2了,
然後-1剩1,
所以35-17=18得解。

分解動作看似複雜,
實際上熟悉以後那就是肌肉反射了。
就像格鬥遊戲尻大絕招一樣,
高手高高手都是練到自然而然就能搓出來的境界,
誰還跟你用大腦去控制手指?
你說對吧!

多位數的加減法,
如果使用筆算,
我們都知道必須從個位數開始,
這樣一旦發生進位/借位的情況時,
高位數才不會面臨到需要擦掉重寫的情況。
但用算盤打就沒這個問題,
因為只要面臨進、借位的情況都是能夠立即處理或事後處理的,
且也不像筆算會有擦除重寫的麻煩,
因此用算盤打加減法,
你愛從高位往回打還是從低位往上打,
甚至從中間開始朝左右打都無所謂,
記得每一個位數都要算到就好了。

其實也很好理解不是嗎?
例如18763+65536,
實際上就等於(10000+60000)+(8000+5000)+(700+500)+(60+30)+(3+6)對吧?
(注意看!分解出來的每一個數字都只有一個有效數字,其餘都是零!)
每一個括弧裡的運算就是那個位數自己的運算,
最後各自運算出來再加總就好。
那麼既然如此,
只要你每個括弧都有算到,
那麼哪個先算哪個後算不就沒差了嗎?
減法也是相同道理的,
例如65536-18763,
實際上還是等於(60000-10000)+(5000-8000)+(500-700)+(30-60)+(6-3)。
雖然括弧內的運算子變成減法了,
但括弧間的運算仍是加法問題,
因此一樣是先算後算都沒差的。
可是你問「會有借位問題啊」,
這個簡單,
你看敝人分解動作一次就知道為什麼沒問題了。

首先我們先把被減數65536打出來:
(1|1) (1|0) (1|0) (0|3) (1|1) (65536)
接著減數18763寫在旁邊備忘。
建議上當然是從高到低或從低到高,
不過這裡為了演示交換律,
敝人就假設按照「百十萬個千」的順序做運算吧!
所以我們的順序分別是「-700、-60、-10000、-3、-8000」。
那麼我們先從-700開始,
馬上發現(1|0)不夠減(1|2)需要借位,
因此百位變成(1|3)(10-7=3,所以變成推3顆珠),
同時千位數要扣1,
因此變成:
(1|1) (0|4) (1|3) (0|3) (1|1) (64836)
接著-60一樣發現遇到要借位的狀況,
所以變成(1|3) (0|3)改打成(1|2) (2|3)並且扣掉(1|1),
得到(1|2) (1|2)
因此整個數字來到:
(1|1) (0|4) (1|2) (1|2) (1|1) (64776)
接著運算-10000:
(1|0) (0|4) (1|2) (1|2) (1|1) (54776)
接著運算-3:
(1|0) (0|4) (1|2) (1|2) (0|3) (54773)
接著運算-8000:
(0|4) (1|1) (1|2) (1|2) (0|3) (46773)
結果:46773得解
不相信嗎?
你自己去按計算機不就知道了www

當然,
這樣換來換去並沒有好處,
所以最好還是單純按照高到低或低到高的順序去打就可以了。

【乘法】

嘿嘿嘿,
學珠算的,
乘法絕對是一大難關。
算盤打加減法甚至不用人教,
只要知道算盤怎麼表達數字自然就會打了;
但乘法如果沒人教,
純憑自己摸索可就沒有那麼容易了。

小時候還記得大人都會要求要背九九乘法表嗎?
這個東東在算盤上算乘法也是必須要會的,
如果沒有九九乘法做鋪墊,
那麼用算盤就打不出乘法來。

如果不使用計算機而使用筆算乘法,
除非是簡單的一位數乘法,
不然一般我們都會使用直式乘法。
我們先來分析一下直式乘法的原理:

例)  9487
    2058
--------
   75896
  47435
     0
18974
--------
19524246

這個是怎麼來的呢?
首先就是9487×8=75896
然後9487×50=474350
然後9487×0=0
然後9487×2000=18974000
最後把所有項目加總起來。

但其過程中其實還能再細分,
9487×8=9000×8+400×8+80×8+7×8。
沒有錯,
這就是「分配律」的應用而已。

好了,
回到主題,
算盤是怎麼計算乘法的呢?
其實很簡單,
基本跟直式乘法原理一樣,
就是利用乘法分配律將每一個位數拆開分別相乘後再加起來。

敝人熟悉的乘法的算法口訣:
被乘數由小至大,
乘數由大至小,
乘數有幾位數就多留幾位。

具體作法敝人會一一解釋。

首先一樣先把被乘數9487打出來:
(1|4) (0|4) (1|3) (1|2)
接著乘數有幾位後面就留幾位。
因為2058是4位數所以留4位:
(1|4) (0|4) (1|3) (1|2)|(0|0) (0|0) (0|0) (0|0) (9487 | 0000)
敝人中間用一個中間槓記號表示待會我們正在運算的位置,
這個記號可以避免我們自己犯蠢。
OK,
我們要先算第一步:7×2058
首先,
7×2=14,
因此算盤上我們把正在計算的位置打成14。
注意,
乘法是從高位往低位算去,
因此也要從高位往低位打。
定位槓的意思就是要提醒我們自己從這裡開始打數這樣。
因為我們現在正在運算各位數7,
因此7這個數字用不到了,
所以7×2=14這部份我們可以直接從7的位置打上去。
(當然,你想在算盤上另外開一個空間去打也可以就是了)
所以這時候算盤會變成這樣:
(1|4) (0|4) (1|3) (0|1)|(0|4) (0|0) (0|0) (0|0) (9481 | 4000)
接著計算7×0=0,
這部分當然就沒變。
接著計算7×5=35,
不過請記得,
剛剛的2代表2000,
這裡的5代表的是50,
差兩個位數,
因此開頭的位置也要往右兩個位置,
因此打成這樣:
(1|4) (0|4) (1|3) (0|1)|(0|4) (0|3) (1|0) (0|0) (9481 | 4350)
最後計算7×8=56,
當然,
你也必須再往右一個位數,
當然重疊位數的部分就是加起來:
(1|4) (0|4) (1|3) (0|1)|(0|4) (0|3) (2|0) (1|1)
還記得2個上珠代表10所以要進位嗎?
所以要打成這樣:
(1|4) (0|4) (1|3) (0|1)|(0|4) (0|4) (0|0) (1|1) (9481 | 4406)
到此,
我們己經完成了個位數的乘法,
因此我們把定位槓往左移一位進行十位數的乘法:
(1|4) (0|4) (1|3)|(0|1) (0|4) (0|4) (0|0) (1|1) (948 | 14406)
到這裡其實應該有人發現了,
14406=2058×7
所以到此很好理解了吧?
等一下我們進行十位數的乘法時,
再打數的同時就要對相同位數進行加和的動作,
而這不就是直式乘法的原理嗎?
沒錯,
算盤打乘法就是這麼簡單,
剩下的只是熟練度的問題。
以下敝人會以拆解的方式把算盤打完,
如果你能看得懂敝人在打什麼那就表示你已經理解了算盤的計算過程了。

接著是9487中的80×2058:
(1|4) (0|4) (1|3)|(0|1) (0|4) (0|4) (0|0) (1|1) (948 | 14406)
2000×8=16000
(1|4) (0|4) (0|1)|(1|2) (0|4) (0|4) (0|0) (1|1) (941 | 74406)
50×8=400
(1|4) (0|4) (0|1)|(1|2) (1|3) (0|4) (0|0) (1|1) (941 | 78406)
8×8=64
(1|4) (0|4) (0|1)|(1|2) (1|3) (2|0) (0|4) (1|1)
(1|4) (0|4) (0|1)|(1|2) (1|4) (0|0) (0|4) (1|1) (941 | 79046)

接著是9487中的400×2058:
(1|4)|(0|4) (0|1) (1|2) (1|4) (0|0) (0|4) (1|1) (9 | 4179046)
2000×4=8000
(1|4)|(0|0) (1|4) (1|2) (1|4) (0|0) (0|4) (1|1) (9 | 0979046)
50×4=200
(1|4)|(0|0) (1|4) (1|4) (1|4) (0|0) (0|4) (1|1) (9 | 0999046)
8×4=32
(1|4)|(0|0) (1|4) (1|4) (2|2) (0|2) (0|4) (1|1) (9 | 099(12)246)
(1|4)|(0|0) (1|4) (1|5) (0|2) (0|2) (0|4) (1|1) (9 | 09(10)2246)
(1|4)|(0|0) (1|5) (0|0) (0|2) (0|2) (0|4) (1|1) (9 | 0(10)02246)
(1|4)|(0|1) (0|0) (0|0) (0|2) (0|2) (0|4) (1|1) (9 | 1002246)

接著是9487中的9000×2058:
(1|4) (0|1) (0|0) (0|0) (0|2) (0|2) (0|4) (1|1) (91002246)
2000×9=18000
(0|1) (0|9) (0|0) (0|0) (0|2) (0|2) (0|4) (1|1) (19002246)
50×9=450
(0|1) (0|9) (0|4) (1|0) (0|2) (0|2) (0|4) (1|1) (19452246)
8×9=72
(0|1) (0|9) (0|4) (2|2) (0|4) (0|2) (0|4) (1|1) (194(12)4246)
(0|1) (0|9) (1|0) (0|2) (0|4) (0|2) (0|4) (1|1) (19524246)

因此9487×2058=19524246得解。

當然,
如果你對於這個方法不熟悉或覺得不夠直觀,
或者害怕對位置對不準,
那麼你可以照直式乘法的方式都從低位往高位運算而不是像敝人一樣是高到低運算。
只是記得找到算盤一個空白的位置,
然後從個位數開始逐個乘開再加總就對了。

以下示範直式乘法的模擬:
(0|0) (0|0) (0|0) (0|0) (0|0) (0|0) (0|0) (0|0) (00000000)
9487×8:
7×8=56
(0|0) (0|0) (0|0) (0|0) (0|0) (0|0) (1|0) (1|1) (00000056)
80×8=640
(0|0) (0|0) (0|0) (0|0) (0|0) (1|1) (1|4) (1|1) (00000696)
400×8=3200
(0|0) (0|0) (0|0) (0|0) (0|3) (1|3) (1|4) (1|1) (00003896)
9000×8=72000
(0|0) (0|0) (0|0) (1|2) (1|0) (1|3) (1|4) (1|1) (00075896)

9487×50:
7×50=350
(0|0) (0|0) (0|0) (1|2) (1|0) (2|1) (2|4) (1|1) (00075(11)(14)6)
(0|0) (0|0) (0|0) (1|2) (1|1) (0|2) (0|4) (1|1) (00076246)
80×50=4000
(0|0) (0|0) (0|0) (1|2) (2|0) (0|2) (0|4) (1|1) (0007(10)246)
(0|0) (0|0) (0|0) (1|3) (0|0) (0|2) (0|4) (1|1) (00080246)
400×50=20000
(0|0) (0|0) (0|0) (2|0) (0|0) (0|2) (0|4) (1|1) (000(10)0246)
(0|0) (0|0) (0|1) (0|0) (0|0) (0|2) (0|4) (1|1) (00100246)
9000×50=450000
(0|0) (0|0) (1|0) (1|0) (0|0) (0|2) (0|4) (1|1) (00550246)

9487×2000:
7×2000=14000
(0|0) (0|0) (1|0) (1|1) (0|4) (0|2) (0|4) (1|1) (00564246)
80×2000=160000
(0|0) (0|0) (1|1) (2|2) (0|4) (0|2) (0|4) (1|1) (006(12)4246)
(0|0) (0|0) (1|2) (0|2) (0|4) (0|2) (0|4) (1|1) (00724246)
400×2000=800000
(0|0) (0|0) (3|0) (0|2) (0|4) (0|2) (0|4) (1|1) (00(15)24246)
(0|0) (0|1) (1|0) (0|2) (0|4) (0|2) (0|4) (1|1) (01524246)
9000×2000=18000000
(0|1) (1|4) (1|0) (0|2) (0|4) (0|2) (0|4) (1|1) (19524246)得解

【後記總結】

以上介紹了利用算盤進行加、減、乘的運算,
不過真正的大魔王「除法」可還沒到呢。
別著急,
篇幅已經很長了,
你需要休息一下了(敝人也是),
除法我們明天再討論吧!


封面圖片:王冠之心:南海の市姫・クラムクラム 來源:你摳靜畫id=3136352
124 巴幣: 30

創作回應

愛德莉雅.萊茵斯提爾
哇...辛苦了
2021-03-04 18:57:52
愛天使亞夜
還好啦
2021-03-04 19:04:35
神龍
小時候學過,還記得當時參加比賽,名次還很高,但現在忘光了
2021-03-04 20:00:12
愛天使亞夜
算盤就當作一個傳統技藝就好了,畢竟有電子計算機以後算盤真的完敗XD
2021-03-05 07:05:16
因心·阿里·易卜拉欣
看到數學就頭暈了
2021-03-04 23:08:12
愛天使亞夜
不會啦,數學很有趣
2021-03-05 07:05:26
梅麗
看到市姬就點進來了0.0
2021-03-05 00:34:32
愛天使亞夜
阿市www
2021-03-05 07:05:43

更多創作