請問一下如何計算n!未尾第一個不為零的數字。
當我們常遇到要求n!未尾有多少個0的問題,但我也常想第一個不是0的數字又是什麼呢?
例如:10!=1*2*3*4*5*6*7*8*9*10
2*3=6
6*4=24
4*5=20
2*6=12
2*7=14
4*8=32
2*9=18
由此可見10!末尾第一個不是0的是就是8了。
那我們應如何來推導此規律呢?
我曾推導過,但結果不是令我自己滿意,請大家幫幫忙。
2007-10-18 04:11:02 · 4 個解答 · 發問者 tsl 7 in 科學 ➔ 數學
我曾嚐試指導學生做專題研究,也已導到一些規律, 想看看大家還有什麼的看法。
2007-10-18 06:13:14 · update #1
呵!這個我導過,但 還是謝 你
2007-10-18 16:59:57 · update #2
這些 規律在值越來越大時,會有問題喔
2007-10-18 17:04:38 · update #3
200! 末尾第一個不為"0"的數?
我導出是2
1352! 末尾第一個不為"0"的數?
我導出是6
2007-10-18 17:36:16 · update #4
你的方法是和我的一樣,但我是找出其一般式的解法。
2007-10-19 04:07:57 · update #5
抱歉!應是一般式的表示方法。
2007-10-19 04:08:33 · update #6
很謝謝你能如此的和我討論。
2007-10-19 04:09:31 · update #7
看來題目不是很難,晚上再驗證一些想法。
2007-10-18 15:14:52 補充:
確定有公式,不知發問者是否只接受10 進制的說明?
2007-10-18 20:46:03 補充:
首先以下兩行的計算免了。
(a*10 1)*(a*10 2)*(a*10 3)*(a*10 4) mod 10 =4 <--我就省略這個證明了。
(a*10 6)*(a*10 7)*(a*10 8)*(a*10 9) mod 10 =4 <--這個也省略。
n 是題目,需要求第一個不為0 的值。
規則是除以5 得到商和餘數,若商不為0 則重複上一個步驟。不重複也是可以的。
n / 5 = a1...b1
a1 / 5 = a2...b2
a2 / 5 = a3...b3
..............
當然b1,b2,b3.... 不會大於4,所以直接算出個位數的值。
a 的值轉成 2^a * a! 。
直接舉例好了
ex1:
(100!第一個不為0 的值=4)
100/5 = 20...0
a1=20 寫成2^20 * 20!,b1=0 寫成0!。
2^20 * 20! * 0! 第一個不為0 的值也會等於4。
20 / 5 = 4...0
a2=4 寫成2^4 * 4!,b2=0 寫成0!。
2^20 * 2^4 * 4! = 2^24*4!
2^24 mod 10 = 6
4! mod 10 = 4
6*4 mod 10 = 4 <---第一個不為0 的值
ex2:
21! <---第一個不為0 的值等於 ?
21/5=4..1
1!*2^4*4!=>1*6*4=>4 <---第一個不為0 的值
ex3:
32!<---第一個不為0 的值等於 ?
32/5=6..2
2!*2^6*6!
6/5=1..1
2!*2^6*2^1*1!=>2*4*2*1=> 6 <---第一個不為0 的值
ex4:
29! <---第一個不為0 的值等於 ?
29/5=5..4
4!*2^5*5!
5/5=1..0
4!*2^5*2^1*1! => 4*2*2*1 => 6 <---第一個不為0 的值
ex5:
52!=>2!*50!=>2!*2^10*10!=>2!*2^10*2^2*2!=>2*4*4*2=> 4 <---第一個不為0 的值
多舉了一些例子,希望你能看的懂。
2007-10-18 20:55:34 補充:
剛剛google 了一下,還真的沒有我這個方式。
還是我的關鍵字挑的不夠好?
有看到類似的問題,不過都是要求用程式完成。
2007-10-18 21:02:24 補充:
=>
請把上面的那組符號視為相乘的數字取個位數後,相乘,再取一次個位數。
ex:
2^4*2^5 => 6*2 => 2
2007-10-18 21:15:33 補充:
可以問一下第一個有問題的值是多少嗎?
2007-10-18 22:02:04 補充:
200 /5 =40...0
0!*2^40*40!=>6*40!
40/5=8..0
6*0!*2^8*8!=>6*1*6*8!=>6*8!
8/5=1..3
6*2^1*1!*3!=>6*2*1*6 => 2 <-答案
1352/5=270..2
2!*2^270*270!=>2*4*270!
270/5=54...0
2*4*0!*2^54*54!=>8*4*54!
54/5=10...4
8*4*4!*2^10*10!=>8*4*4*4*10!=>2*10!
10/5=2...0
2*0!*2^2*2!=>2*1*4*2=> 6 <-答案
2007-10-18 22:04:59 補充:
用我的方法算還有程式來作為驗算,皆和你的答案一致。
不知道我的方法哪裡有問題?
2007-10-18 22:22:38 補充:
本題中
1000!和1001! 的答案是相同的,答案是2
10000!和10001! 的答案是相同的,答案是8
100000!和100001! 的答案是相同的,答案是6
減1 可以被200 整除,所以類似2^n取個位數的規律應是不存在的。
2007-10-19 11:38:11 補充:
一般式的表示方法是指?
可用200 作為例子嗎?
2007-10-18 16:46:03 · answer #1 · answered by kyiimno 3 · 0⤊ 0⤋
哈!的確不錯,我不用注音輸入法,我是用華象輸入法,要比倉頡快,但拆字時,沒看清楚也會出錯。
2007-10-18 15:46:16 · answer #2 · answered by tsl 7 · 0⤊ 0⤋
剛剛用Excel跑一下
200個循環一次(除了首項之外)
1264224288868288682448464484688682224282
2428662642242844846662646626488682448468
8682224282242866264448468868222428224286
6264662642242888682886824484688682662644
4846448462242866264224288868288682448466
第(200n+1)項改成6即可
註:僅供參考,上班慌亂偷打中........
2007-10-18 16:53:48 補充:
tsl大人連續寫了三個未尾,第四個才寫末尾
(胡思亂想中.....
用注音的人不太會發生這種事
莫非也是用倉頡的LKK..........)
2007-10-19 00:48:02 補充:
原來我的從第125項出問題了
看來為了閃大數而抓0.125是錯誤的^^
2007-10-18 12:08:42 · answer #3 · answered by Su 6 · 0⤊ 0⤋
我們知到, 要找 n! 的末尾有幾個 0 是簡單的
(像, http://www.purplemath.com/modules/factzero.htm),
但, 末尾非 0 的那個 digit 的表現規則, 似乎很難...
我在 http://mathworld.wolfram.com/Factorial.html 的當中找資料.
它提到:
Let a(n) be the last nonzero digit in n!, then the first few values
are 2, 6, 4, 2, 2, 4, 2, 8, 8, 8, 6, 8, ... (Sloane's A008904).
This sequence was studied by Kakutani (1967), who showed that
this sequence is "5-automatic," meaning roughly that there exists
a finite automaton which, when given the digits of n in base-5,
will wind up in a state for which an output mapping specifies a(n).
The exact distribution of digits follows from this result.
在 http://www.rain.org/~mkummel/stumpers/28jan00a.html 有說:
>> There is no easy pattern. <<
也就是您說的 "應如何來推導此規律?" 並不是簡單的事,
或許是博士班或教授級的研究題目吧?
2007-10-18 05:33:45 · answer #4 · answered by Leslie 7 · 0⤊ 0⤋