1000的階乘的值是多少 1000的階乘有幾位數

問題一:
1000的階乘末尾有多少個0?
問題二:
【1000的階乘的值是多少 1000的階乘有幾位數】1000的階乘有多少位數?
問題三:
1000的階乘的值是多少?
1000的階乘末尾有多少個0?
直接遞歸計算嗎?有點天真了 。1000的階乘 , 是一個非常大的數字 , 得想其它辦法了 。注意:要求的是1000的階乘末尾的0的個數 , 而不是求1000的階乘 。
喜歡編程的小伙伴可以加小編的Q群1026782549 , 進群可以領取免費的學習資料跟源代碼哦!也可以關注小編的微信公眾號:編程雯子 , 領取資料哦
很顯然 , 從分解質因數的過程來看 , 結尾的0必然是2和5的乘積 , 而且在階乘中 , 5是稀缺值 , 而2是富余值 , 所以 , 只需要知道質因數中5的個數就行了 。我們以26的階乘為例:

1000的階乘的值是多少 1000的階乘有幾位數

文章插圖

可見:其中有6個5 , 有充足的2 , 所以只需要看5的個數 。易知 , 26的階乘的末尾有6個0. 用階乘計算器來看下 , 果然如此:

1000的階乘的值是多少 1000的階乘有幾位數

文章插圖

我們來討論更一般的情況:
設f(x)是x中因數5的個數, [x]為x向下取整的值 , 則有:

1000的階乘的值是多少 1000的階乘有幾位數

文章插圖

所以:

1000的階乘的值是多少 1000的階乘有幾位數

文章插圖

至于程序 , 給個遞歸版本吧:

1000的階乘的值是多少 1000的階乘有幾位數

文章插圖

結果:249. 可見 , 1000的階乘末尾有249個0.
喜歡編程的小伙伴可以加小編的Q群1026782549 , 進群可以領取免費的學習資料跟源代碼哦!也可以關注小編的微信公眾號:編程雯子 , 領取資料哦
1000的階乘有多少位數?
直接遞歸計算嗎?有點天真了 。我們來看下如下規律:

1000的階乘的值是多少 1000的階乘有幾位數

文章插圖

設f(x)為x的數位個數 , [x]為x向下取整的值 , 則有:

1000的階乘的值是多少 1000的階乘有幾位數

文章插圖

至于程序 , 那就很簡單了:

1000的階乘的值是多少 1000的階乘有幾位數

文章插圖

結果:2568. 可見 , 1000的階乘有2568位 。
1000的階乘的值是多少?
直接遞歸計算嗎?有點天真了 。還是用字符串來做吧:

1000的階乘的值是多少 1000的階乘有幾位數

文章插圖


1000的階乘的值是多少 1000的階乘有幾位數

文章插圖

結果是:

1000的階乘的值是多少 1000的階乘有幾位數

文章插圖

可以看到 , 1000的階乘有2568位 , 且最后有249個0.