空手一方客

收獲了一種恬靜的生活, 像一條波瀾不驚的小河, 流過春夏 流過秋冬
個人資料
  • 博客訪問:
正文

十幾乘十幾,三步走的原理

(2014-08-13 22:55:08) 下一個
最近文學成說19x19的乘法表:http://www.wenxuecity.com/news/2014/08/13/3511603.html 列了一段有關十幾乘十幾,分三步走的算法。

一個高手“草原-”在跟貼列出了它的很基本的原理。我覺得“草原-”應該是個搞算法的好手。如果真是搞 “算法分析”的話,應可比擬Knuth  --- 就是從數學基礎出發,找出基本的算法。電腦的CPU/算法其實都是這些基本計算而累疊起來的。

任何一個十幾的數,乘上另一個十幾的數,可分為三步:  ( 例如  13 x14 )
1) 第一個數  加上 第二個數的個位數 :  (13 + 4 =17)
2) 把這和 乘上 10 :  (17 x 10  = 170)
3) 再加上 兩個數之個位數的乘積: (3x4=12,   170+12 =182)
得出 13 x14 =182
 
“草原-”列出了它的很基本的原理,就是:(10+a) x (10+b) = (10+a+b) x 10 + a x b
 
我把它展開,給非理科的同學看:
 
---  兩個十幾的數A和B相乘; 那麽A就可以寫成(10+a), B就可以寫成(10+b)這種分位表示法。a是第一個十幾的數之個位上的數值,b是第二個十幾的數之個位上的數值
(這裏, A和B都是小於20,大於10;a和b自然就是小於10,大於0的了。這樣 十幾的乘法,就轉換為 小於10的 a和b的九九乘法了)

---  理解了A和B的分位表示, 那麽 A x B就有:
A x B  =  (10+a) x (10+b) = (10+a+b) x 10 + a x b  = ((10+a) +b) x 10 + a x b
=  (A+b) x 10 + a x b

--- (A+b) x 10 + a x b 就是那三步走的原理:
第一步: (A+b)
第二步: x10
第三步:+ ( a x b)

-----
結語:電腦CPU內的乘法器, 就是按這類算法設計的:
基本加法(加法器) --〉乘(移位) --〉再加法(加法-累加器) ---- 從而完成乘法


[ 打印 ]
閱讀 ()評論 (1)
評論
白熊from北京 回複 悄悄話 文學城網友說,中國家長在給自己的孩子背九九表的時候,印度家長已經讓孩子背 19X19 表了,算法如你所說的。其實所謂的數學奧校就是學些這個。
登錄後才可評論.