C 中求100的階乘的末尾包含多少個0?

2023-03-09 19:55:05 字數 3258 閱讀 2590

1樓:聽不清啊

乙個連乘積中有乙個5乘以乙個2,就會在末尾有乙個0。乙個自然數的階乘末尾的0的個數,就等於它的所有乘數中含有因子5的個數,這是因為因子2的個數比因子5的個數明顯要多的緣故。例如,20!

、24!的末尾都是有4個0,但是25!末尾會有6個0。

因為25中含有2個因子5。

#include

int main()

int n=100,s=0;

while(n>0)

s+=n/5; /每5個連續整數中就有乙個5的倍數。

n/=5; /每25個連續整數中就有乙個25的倍數,……printf("100!末尾有 %d 個0",s);

2樓:網友

#include""

void main()

m++;有了這個迴圈才能正常結束。

cout<<"100!include"<

3樓:匿名使用者

依次為。n=m

n=n/5m++

這是由於,100!中每個4*5的出現都會造成乙個零。比如5*4=20*(5*4)=400*(5*4)..顯然乙個數包含4的因子數必然多於一定夠用。

100的階乘末尾有幾個0

4樓:清溪看世界

100的階乘有24個結尾0。

具體演算法如下:

一、首先確定5因子有多少:

在100內,因子是5的數有5, 10, 15, 20, 25...總共有20個。但是25, 50, 75, 100都包含了2個5作為因子(25=5*5, 50=2*5*5),對於這些數,需要多數一次。

所以總共有24個5因子。

從公式角度: 5因子的數目 = 100/5 + 100/(5^2) +100/(5^3) +24 (必須是整數)

二、確定2的因子有多少:

2, 4, 6, 8, 10, .總共有100/2=50個2因子,100/4=25個4因子(要多計數一次),100/8=12個8因子(要多計數一次)所以2因子的數目 = 100/2 + 100/(2^2) +100/(2^3) +100/(2^4) +100/(2^5) +100/(2^6) +100/(2^7) +97

綜上所述,共有24個5因子 和 97個2因子,所以能湊24 個 (2,5) 對。

綜上所述100的階乘也就有24個結尾零。

5樓:匿名使用者

先來數5因子有幾個:在100內,5作為因子的數有5, 10, 15, 20, 25...總共有20個。

但是注意到25, 50, 75, 100都包含了2個5作為因子(25=5*5, 50=2*5*5)

因此對於這些數,我們要多數一次。所以總共就是有24個5因子。

從公式角度: 5因子的數目 = 100/5 + 100/(5^2) +100/(5^3) +24 (必須是整數)

現在再來數2因子有幾個:2, 4, 6, 8, 10, .總共有100/2=50個2因子,100/4=25個4因子(要多計數一次),100/8=12個8因子(要多計數一次),.

所以2因子的數目 = 100/2 + 100/(2^2) +100/(2^3) +100/(2^4) +100/(2^5) +100/(2^6) +100/(2^7) +97

綜上所述,共有24個5因子 和 97個2因子,所以能湊24 個 (2,5) 對。

因此100的階乘也就有24個結尾零。

求1000階乘的結果末尾有多少個0

6樓:網友

每出現乙個2和5,就會在末尾有乙個0,所以只要看,從1

到1000中總共有多少個2和5就可以了,又因為5總比2少,所以,只要看1000的階乘中有多少個約數5就可以了。同樣,只有末尾是0或者5的數才會有5,所以總共只有200個數其中包含5,但是,其中有1000/25=40個數包含2個5,1000/125=8個數包含三個5,1000/625=1個數包含4個5,所以總共有200+40+8+1=249個5,所以結果裡總共有249個0。

1000的階乘所得的結果末尾有幾個「0」

7樓:科學普及交流

只要求1000裡有幾個5的因數就可以了。

再求1000裡有幾個25的因數。

再求1000裡幾個125的因數。

最後625還是乙個。

所以,最後得到200+40+8+1=249個有249個零。

求100的階乘結果後面有多少個0

8樓:沐振銳成歌

「100的階乘結果後面有多少個0」應看100的階乘有多少個10因子。因為2足夠多,故看因子5的個數。5的倍數的數有20個(5,10,15,……95,100),其中25的倍數有4個(有兩5),所以共有5的因子24個。

9樓:接華皓完頤

首先,50的倍數,2個,每個產生2個0,共4個0;

除了50和100之外,10的倍數共8個,8個0;

25和75,各產生2個0,共4個0;

除了25,75以及10的倍數外,5的倍數共10-2=8個,8個0合計:4+8+4+8

=24個0

100 的階乘末尾有多少個0

10樓:匿名使用者

100! =10^157

也就是說大約有144個0

100的階乘末尾有多少個零,準確,跪謝

11樓:網友

1、5的倍數 20個 因為5遇偶數會產生1個零 所以共產生20個零。

2、25的倍數 4個 遇2次偶數產生2個零。由於在步驟1中計算了一次遇偶數產生的零 未避免重複計算 故步驟2中25的倍數產生的零 每個再計1次 共產生4個零。

綜上所述 末尾共產生24個零。

100階乘末尾有多少個零

12樓:匿名使用者

100的階乘等於這麼多 至於有多少個0 這個並不知道 而且這樣的問題根本就沒有什麼意義。

C語言求1到10的階乘的和

程式輸出結果是對的,但是,getch 這句給改一下,getchar 就對了啊,但是我不知道你加這個是說明意思,完全沒有必要的啊。可用不要這句就是的啊。程式就是對的了。輸出結果也是對的。為了驗證,你可以把10改為4,乙個小的資料,然後運算驗證一下就可以了。你試試把for後的兩句放在for語句中 因為你...

c中怎麼獲取1到100的隨機數,C中怎麼獲取1到100的隨機數?

random randow new random console.writeline randow.next 100 1 c 怎麼獲取隨機數 在開發過程中,常常要產生隨機數,如生成靜態 html 網頁時,檔名通常用產生隨機數的方式獲得,生成定單的時候,定單號也可以用產生隨機數的方式獲得等。在 c 中...

c 中求冪運算,遞迴求冪數的C 程式設計

2 頁面上顯示的是4,第乙個2代表乙個數值,第二個2代表2的幾次冪,2 頁面上顯示的是9,3代表乙個數值,2代表3的2次冪。c 中我用pow n,m 來實現求冪為什麼不行 完整的寫法為,m 表示以n為底,m次方。其中n,m必須為double型別 整型可以隱式轉換 double dcnt 0 dcnt...