俄式乘法:關於「拆分計算」、「尋找規律」與「二進制」思路

前圖紙-avatar-img
發佈於前圖紙2023 個房間
更新於 發佈於 閱讀時間約 7 分鐘

〈俄式乘法:關於「拆分計算」、「尋找規律」與「二進制」思路〉2023-12-09


  加減乘除是我們在小學義務教育中就學過的內容。即便是自認數學不好的人,也很難被「請將以下兩個數字相乘」的問題輕易難倒。當然,不小心算錯的情況總是有的,但幾乎已經不太有人會算不出來。但我們是如何算出來的呢?


  通常的做法似乎是:將每一位數分別相乘,然後把這些相乘的結果按照其位數關係相加。如果是兩三位數還可能心算,但當數字更大一點時,通常需要在紙張上列出直式乘法,才能比較不錯亂地計算出來(先假定你沒帶手機,也沒有其他有計算機功能的東西在身上。或者,你就在國小數學考試的現場,所以,別作弊喔!)。但進一步去問,在我們如此熟悉地在過程裡運用個位數乘法之前,我們是怎麼學會的呢?


  一種思路是透過圖像畫與應用化,讓我們能夠盡可能地去「理解」乘法並對個位數乘法的過程與結果產生印象。譬如我們可以畫三個籃子,每個籃子裡有三顆雞蛋,以此去認識"3x3=9"。另一種更典型與傳統的做法就是背「九九乘法表」--總之事情就是這樣,先背起來,考試會考。但無論是哪種方法,在數字一到五的時候都相對簡單,六七八開始就會比較困難。


  但到了九的時候,又變簡單了,因為九就是十減一。所以,3x9就是30-3、4x9就是40-4,同時我們也能清楚看見結果的規律,兩個位數加起來是九,然後一個比一個大。去思考這件事,利用這個「小聰明」是重要且有益的。因為這其實給了我們兩種在數學上好用的能力:「拆分計算」與「尋找規律」。而這可以讓我們更進一步地去思考乘法、思考計算、乃至於對數學在文明中的作用有整體性的進一步認識。



  據傳,在俄羅斯的鄉村中,沒有上過學的農夫們一直運用著一種有別於我們一般乘法的乘法計算方式。在這種被稱為俄式乘法(甚至俄國農夫乘法)的計算方式中,計算者不需要被過九九乘法,他需要的就只有「加倍」、「減半」與「全部加起來」。


  這個計算方式可以分為以下幾個步驟:首先,把要相乘的兩個正整數放在第一列的左右兩邊。第二步:將左邊的數減半向下取整、右邊的數加倍寫在第二列;第三步:重複上一步,直到左邊的數變成一。第四步,將所有左邊是偶數的數字忽略不計,將右邊剩下的數字全部相加,和數就是答案。舉例,「計算29x12」:


29 | 12

14 | 24 (左邊是偶數,忽略不計)

7  | 48

3  | 96

1  | 192


29x12 = 12+48+96+192 = 348


  從已經學會「標準乘法」的我們的角度看來,這也許很神奇,但似乎只是讓事情變得更麻煩。但從沒有機會受到現代數學教育的人來說,能夠只用「加倍」、「減半」與「全部加起來」這樣素樸的數學概念就將兩個「很多」乘在一起,對古代俄羅斯農村生活而言,已經非常堪用且方便了。但另一方面,這種算法以及其背後的思路,在今日,仍有著相當大的作用。它能讓我們更有效率地完成一些,計算量大到人類難以想像的計算。



  事實上,這種算法其實沒有那麼難理解,其中的素樸想法便是:「把東西每兩個算作一堆,多出來的先放旁邊。」重複到最後,我們會得到一個「好大一堆」,以及好幾個放到一邊的,把它們通通加起來就是答案。這之中一個最普遍的邏輯跟我們在計算「乘以五」的時候會「先除以二再乘以十」、計算「乘以九」的時候會「乘以十再減乘以一」的道理有相似之處,我們都是去把它分拆乘對我們而言更好計算的部分,再把它組和在一起。


  但同時,它還包含了另一個邏輯,也就是二進制的思路。以前面的例子來說,29寫成二進制是"11101"。相應地,在俄式乘法中,第二列會是沒有餘數(也就意味著,這一階段的「小堆」被完整地分到了下一階段的「大堆」)的、要在最後被忽略不計的偶數。而其他幾列,被標誌出"1",也就是有餘數的、需要在最後被加在一起的奇數。



  如果是熟悉程序的人一定能馬上聯想到,那個在俄式乘法裡要被計算與不要被計算的分別,其實也就是"True"和"False"。俄式乘法的思路,在那些大到超越人類計算尺度的計算--譬如說高次方數的運算、或者費波那契數列的計算--,都能夠透過這種「二進制化並拆分」的方式,更有效率地被計算出來。


  譬如說,當我們需要計算一個數字的n次方時,我們並不是只能暴力地將這個數字乘以自己n次,而是可以把n改寫為2的正整數次方之和(如果是奇數則再加一),來更有效率地作計算。


  其中的邏輯是:譬如說,一個數的4次方是它的平方再平方,我們只需要計算兩次;一個數的16次方就是平方、平方再平方,只要計算三次;21次方則是前兩者的相加再加一,也就是,只要計算2+3+1次,遠遠小於21次。對於愈大的數,其中的差距將會愈加顯著。



  對於人類而言,計算一些越來越大的數的平方還是很不方便,不見得總是能更省時獲省力,但對計算機而言,那些對我們來說「有夠大」的數的計算,其實跟個位數、十位數的計算沒有差多少。


  去降低需要計算的次數,可以讓計算的「時間複雜度」大幅降低,大幅減少時間,也相應地,大幅減少了這些天文數字計算時,計算機運算時消耗的電量與整體社會資源。除了在一些精密科學上有很大的利用價值外,也能在加密與解密技術中有所應用。


  同時,這種「多次的」與「可模式化的動作」,很大程度也就是我們當下認為AI能夠比傳統機械更加有能力做到的事情。也就是說,這一邏輯的理解,很有可能有助於我們在未來更快地銜接AI的思維。


  甚至,就如同萊布尼茲在《易經》中驚奇地遭遇到古代關於二進制的思考,或許某種意義來說,資訊時代與AI時代,反而有機會將我們從蒸氣時代以來的偏移,帶回到那--如果完整的差分機被成功打造,我們能少走一點彎路就抵達的--原先的、與地球更加協調的文明軌道。




延伸閱讀:

〈「6÷2(1+2)=?」:一則簡單的四則運算為什麼在十多年內病毒傳播?〉

〈不只關於答案,關於理解並回應問題〉

〈班門弄斧:班佛定律與世界中的數〉

〈獲得搞笑諾貝爾獎的「同側偏差」實驗:硬幣投擲從來就不是「完全公正」〉

〈機率思維中的張力:三門問題與「運氣守恆的直覺」〉

〈Mr. Anderson〉



留言
avatar-img
留言分享你的想法!
avatar-img
前圖紙的沙龍
106會員
888內容數
一個寫作實踐,關於我看到和思考中的事情。
前圖紙的沙龍的其他內容
2024/12/31
  作為一名每天晚上留給自己兩小時坐在電腦前打字的人,今天的行程自然也是這樣。如果要說今年有什麼成就的話:沒有任何一天真的沒挪出時間或寫不出東西。這值得給自己一點微鼓勵(左右手食指快速彼此觸碰六下)。本來還想寫些下個年度的安排,但今日事今日畢,明年的事情,明年再來說。
2024/12/31
  作為一名每天晚上留給自己兩小時坐在電腦前打字的人,今天的行程自然也是這樣。如果要說今年有什麼成就的話:沒有任何一天真的沒挪出時間或寫不出東西。這值得給自己一點微鼓勵(左右手食指快速彼此觸碰六下)。本來還想寫些下個年度的安排,但今日事今日畢,明年的事情,明年再來說。
2024/12/30
  我們能看見樓上的房東與樓下的房客,我們能往上走也能往下落。我們會經歷痛苦與不安、焦慮與急躁,但同時又有足夠的支持性社會網絡。我們不是那些「只要努力就會成功」的人,也不是那些「再怎麼努力都注定要被辜負」的人。我們所要前往的地方既要求著努力,也要求著機運。
2024/12/30
  我們能看見樓上的房東與樓下的房客,我們能往上走也能往下落。我們會經歷痛苦與不安、焦慮與急躁,但同時又有足夠的支持性社會網絡。我們不是那些「只要努力就會成功」的人,也不是那些「再怎麼努力都注定要被辜負」的人。我們所要前往的地方既要求著努力,也要求著機運。
2024/12/29
  一個真正遵循道德或任何一種規範的所謂「自律」的人,不應該僅僅是遵循一個現存的規範,依樣畫葫蘆地將自己行為成該種規範的形狀。而是,他會去給出一個,按照他自己的形象構造出來的規則。他不是放棄思考,被動地遵循。而是,透過規則,他去將自己展現為自身行為的主人,去透過規則落實自己的價值觀與意志。
2024/12/29
  一個真正遵循道德或任何一種規範的所謂「自律」的人,不應該僅僅是遵循一個現存的規範,依樣畫葫蘆地將自己行為成該種規範的形狀。而是,他會去給出一個,按照他自己的形象構造出來的規則。他不是放棄思考,被動地遵循。而是,透過規則,他去將自己展現為自身行為的主人,去透過規則落實自己的價值觀與意志。
看更多
你可能也想看
Thumbnail
TOMICA第一波推出吉伊卡哇聯名小車車的時候馬上就被搶購一空,一直很扼腕當時沒有趕緊入手。前陣子閒來無事逛蝦皮,突然發現幾家商場都又開始重新上架,價格也都回到正常水準,估計是官方又再補了一批貨,想都沒想就立刻下單! 同文也跟大家分享近期蝦皮購物紀錄、好用推薦、蝦皮分潤計畫的聯盟行銷!
Thumbnail
TOMICA第一波推出吉伊卡哇聯名小車車的時候馬上就被搶購一空,一直很扼腕當時沒有趕緊入手。前陣子閒來無事逛蝦皮,突然發現幾家商場都又開始重新上架,價格也都回到正常水準,估計是官方又再補了一批貨,想都沒想就立刻下單! 同文也跟大家分享近期蝦皮購物紀錄、好用推薦、蝦皮分潤計畫的聯盟行銷!
Thumbnail
每年4月、5月都是最多稅要繳的月份,當然大部份的人都是有機會繳到「綜合所得稅」,只是相當相當多人還不知道,原來繳給政府的稅!可以透過一些有活動的銀行信用卡或電子支付來繳,從繳費中賺一點點小確幸!就是賺個1%~2%大家也是很開心的,因為你們把沒回饋變成有回饋,就是用卡的最高境界 所得稅線上申報
Thumbnail
每年4月、5月都是最多稅要繳的月份,當然大部份的人都是有機會繳到「綜合所得稅」,只是相當相當多人還不知道,原來繳給政府的稅!可以透過一些有活動的銀行信用卡或電子支付來繳,從繳費中賺一點點小確幸!就是賺個1%~2%大家也是很開心的,因為你們把沒回饋變成有回饋,就是用卡的最高境界 所得稅線上申報
Thumbnail
  其中的素樸想法是:「把東西每兩個算作一堆,多出來的先放旁邊。」重複到最後,我們會得到一個「好大一堆」,以及好幾個放到一邊的,把它們通通加起來就是答案。同時,它還包含了二進制的思路。熟悉程序的人一定能馬上聯想到,那個在俄式乘法裡要被計算與不要被計算的分別,其實也就是"True"和"False"。
Thumbnail
  其中的素樸想法是:「把東西每兩個算作一堆,多出來的先放旁邊。」重複到最後,我們會得到一個「好大一堆」,以及好幾個放到一邊的,把它們通通加起來就是答案。同時,它還包含了二進制的思路。熟悉程序的人一定能馬上聯想到,那個在俄式乘法裡要被計算與不要被計算的分別,其實也就是"True"和"False"。
Thumbnail
「什麼時候才能用數學歸納法?」 數學歸納法的哲學意義是,當1代入時關係成立,且n成立時發現n+1時成立,那豈不是1成立2就成立,接著3也成立,因此到∞也成立? 所有數學歸納法適用的時機是: 1. 該命題要證明的範圍在自然數系中 2. 能透過「被歸納的訊息」找到「n和n+1 or n和n-1的關係」
Thumbnail
「什麼時候才能用數學歸納法?」 數學歸納法的哲學意義是,當1代入時關係成立,且n成立時發現n+1時成立,那豈不是1成立2就成立,接著3也成立,因此到∞也成立? 所有數學歸納法適用的時機是: 1. 該命題要證明的範圍在自然數系中 2. 能透過「被歸納的訊息」找到「n和n+1 or n和n-1的關係」
Thumbnail
  程式中很常會看到千奇百怪的運算式,這些運算式都隱藏著各種運算元和運算子,這些是什麼呢?讓我們來一探究竟。   運算元是指變數、常數這類(如:A、B、C、Data、123等),運算子是指運算符號(如:+、-、*、/、%、==、<、&&等這類型),這邊就要介紹C#的運算子以及怎麼使用。
Thumbnail
  程式中很常會看到千奇百怪的運算式,這些運算式都隱藏著各種運算元和運算子,這些是什麼呢?讓我們來一探究竟。   運算元是指變數、常數這類(如:A、B、C、Data、123等),運算子是指運算符號(如:+、-、*、/、%、==、<、&&等這類型),這邊就要介紹C#的運算子以及怎麼使用。
Thumbnail
本篇文章將會記錄Microsoft關於數字計算相關的知識,以及紀錄這些計算的專有名詞,補足闕漏的知識。
Thumbnail
本篇文章將會記錄Microsoft關於數字計算相關的知識,以及紀錄這些計算的專有名詞,補足闕漏的知識。
Thumbnail
各位爸爸媽媽跟老師們,請了解一點。學生如果這地方搞不懂,算都算不出來,狀況一般來說兩種,一種就是沒弄清楚公式跟配方法在幹嘛,那麼筆者這節講的就是實驗有效的辦法,另一種是其他基礎太差,計算速度太慢又易錯,那這就無法透過大量練習提升。
Thumbnail
各位爸爸媽媽跟老師們,請了解一點。學生如果這地方搞不懂,算都算不出來,狀況一般來說兩種,一種就是沒弄清楚公式跟配方法在幹嘛,那麼筆者這節講的就是實驗有效的辦法,另一種是其他基礎太差,計算速度太慢又易錯,那這就無法透過大量練習提升。
Thumbnail
恭喜各位同學進入國中二年級,或者說要恭喜家長,小孩終於進入正規課程了。就跟高一會有銜接課程,大學也有一樣,國一課程基本上也算是有很強烈的銜接意味,但也有不少打底的意思。這也代表,各種綜合運用的技術會在國二的課程中出現。
Thumbnail
恭喜各位同學進入國中二年級,或者說要恭喜家長,小孩終於進入正規課程了。就跟高一會有銜接課程,大學也有一樣,國一課程基本上也算是有很強烈的銜接意味,但也有不少打底的意思。這也代表,各種綜合運用的技術會在國二的課程中出現。
Thumbnail
統全數理功用: 1.方便計算機計算過程直觀化,透過時輪系統,一步一步地理解計算過程 2.數理語言的統一規則化 3.可能方便初學者逐步理解   算法案例   二元算法 統全數理法化   次方/平方/立方.次方根,如何計算對數?   算法案例:加法與減法   算法案例:乘法除法
Thumbnail
統全數理功用: 1.方便計算機計算過程直觀化,透過時輪系統,一步一步地理解計算過程 2.數理語言的統一規則化 3.可能方便初學者逐步理解   算法案例   二元算法 統全數理法化   次方/平方/立方.次方根,如何計算對數?   算法案例:加法與減法   算法案例:乘法除法
Thumbnail
偶然在新聞上看到一到數學題 50+50+25*0+2+2=? 終於有數學系一展長才的地方了 首先我們要明白四則運算之中 加減是一套系統 乘除又是一套系統 為什麼呢? 因為他們的計算具有互補性質 2*2=4 4/2=2 2+2=4 4-2=2 再者 乘法具有交換性 加法也有 但減法與除法沒有 這裡就可
Thumbnail
偶然在新聞上看到一到數學題 50+50+25*0+2+2=? 終於有數學系一展長才的地方了 首先我們要明白四則運算之中 加減是一套系統 乘除又是一套系統 為什麼呢? 因為他們的計算具有互補性質 2*2=4 4/2=2 2+2=4 4-2=2 再者 乘法具有交換性 加法也有 但減法與除法沒有 這裡就可
Thumbnail
一般而言,「1 + 1 = 2」這個數學式的意思是:在相同成份與相同單位的狀態與條件之下,1 加 1 就等於 2。實際上,這個紙上作業的數學式是一個相當抽象的思維表達。如果真的要實現這個式子,必然...必然不能忽略其中「加號」(+) 和「等號」(=) 的意義。......
Thumbnail
一般而言,「1 + 1 = 2」這個數學式的意思是:在相同成份與相同單位的狀態與條件之下,1 加 1 就等於 2。實際上,這個紙上作業的數學式是一個相當抽象的思維表達。如果真的要實現這個式子,必然...必然不能忽略其中「加號」(+) 和「等號」(=) 的意義。......
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News