發新話題
打印

請教一個速算法的緣由

推到噗浪
推到臉書

請教一個速算法的緣由

學生今天很高興的跟我說他發現了一個速算法....99*(ab) (在此ab指的是二位數字)
答案會是四位數..這個四位數的
千位與十位=9*(a+1)的結果
百位與個位=9*b的結果

舉例來說
99*43
千位與十位=9*(4+1)=45..所以千位是4..十位是5
百位與個位=9*3=27..所以百位是2..個位是7
所以答案就是4275..

我想了很久..用乘法公式都湊不出來..
也試圖與我們習慣的做法(100-1)*(ab)去做連結..
但是都證不出來..是否有其他老師知悉緣由..
還請不吝告知..謝謝~

TOP

引用:
原帖由 marina90 於 2011-11-29 09:32 PM 發表
學生今天很高興的跟我說他發現了一個速算法....99*(ab) (在此ab指的是二位數字)
答案會是四位數..這個四位數的
千位與十位=9*(a+1)的結果
百位與個位=9*b的結果

舉例來說
99*43
千位與十位=9*(4+1)=45..所以千位是4 ...
用一般未知數99*(10a+b),與您所舉例的99*43
就知道會有這樣性質

99*(10a+b)=990*a+99*b=(1000-10)*a+(100-1)*b=1000*a+100*b-10*a-b

舉例的為:99*(10*4+3)=4000+300-40-3 =4257

其中百位數2與個位數7所組成的27 ,可視為300/10 -3
(一般未知數百位與個位為100*b/10 - b=9*b)

其中千位數4與十位數5所組成的45 ,可視為10*(4+1)-(4+1)=45
(一般未知數千位與十位為10*(a+1) - (a+1)=9*a+9=9*(a+1)  )

您的學生有這麼細心的觀察,要好好栽培呀!

TOP

此速算法必須限定 b > 0 才正確 !

觀察算式
99*43 = 43*(100-1) = 4300 - 43 = 4200 + 100 - 43 = 4257

同理可得

99*(ab) = (ab)*(100 -1) = (ab00) - (ab) = (((ab) -1)00) + 100 - (ab) = a*1000 + (b - 1)*100 + (9 - a)*10 + (10 - b)

因此 b > 0 時,
千位數字為 a, 十位數字為 (9 - a),
以這兩個數字做成的二位數即 10*a + 9 - a = 9a + 9 = 9*(a+1)

而百位數字為 (b -1), 個位數字為 (10 - b),
以這兩個數字做成的二位數即 10*(b-1) + 10 -b = 9*b

b = 0 時,
千位數字為 (a -1), 十位數字為 (9 - a + 1),
以這兩個數字做成的二位數為 10*(a - 1) + 9 - a + 1 = 9*a

而百位數字為 9, 個位數字為 0,
以這兩個數字做成的二位數為 90


推廣型式示例  ( 其中 a,b,c,d 皆大於零 )
999*(abc) 的十萬位與百位所形成的二位數字為 9*(a+1)
萬位與十位所形成的二位數字為 9*(b+1)
千位與個位所形成的二位數字為 9*c
例:
999*125 = 1,8,  2,7  ,4,5 的某個排列 = 124875  
999*226 = 2,7,  2,7  ,5,4 的某個排列 = 225774  


9999*(abcd) 的則是
9*(a+1),  9*(b+1),  9*(c+1),  9*d
例:
9999*1235 = 1,8,  2,7  ,3,6,  4,5 的某個排列 = 12348765  
9999*2267 = 2,7,  2,7  ,6,3,  6,3 的某個排列 = 22667733

[ 本帖最後由 Joy091 於 2011-12-5 01:26 PM 編輯 ]

TOP

發新話題