Zeroes at the end of a FACTORIAL

  • Context: High School 
  • Thread starter Thread starter murshid_islam
  • Start date Start date
  • Tags Tags
    Factorial
Click For Summary
SUMMARY

The number of trailing zeroes in the factorial of a number can be determined by counting the factors of 5 in the sequence of integers leading up to that number. For 100!, the correct calculation shows that there are 24 trailing zeroes, derived from the formula C = floor(n/5) + floor(n/25) + floor(n/125) + ... until the terms equal zero. This method accounts for the multiple occurrences of 5 in factors such as 25 and 125, which contribute additional zeroes. The discussion clarifies the importance of using the floor function rather than rounding to achieve accurate results.

PREREQUISITES
  • Understanding of factorial notation and calculations
  • Knowledge of prime factorization, specifically the role of the number 5
  • Familiarity with mathematical functions such as floor and rounding
  • Basic programming concepts for implementing algorithms
NEXT STEPS
  • Learn the mathematical derivation of trailing zeroes in factorials
  • Explore programming implementations for calculating factorials and trailing zeroes
  • Study the properties of prime factors in number theory
  • Investigate the efficiency of different algorithms for large factorial calculations
USEFUL FOR

Mathematicians, computer scientists, students studying combinatorics, and anyone interested in algorithm optimization for factorial calculations.

murshid_islam
Messages
468
Reaction score
21
how can i find the number of zeroes at the end of 100!
how can i find the number of zeroes at the end of n!

thanks in advance.
 
Physics news on Phys.org
murshid_islam said:
how can i find the number of zeroes at the end of 100!
how can i find the number of zeroes at the end of n!

thanks in advance.

Your question is the same as finding out how often 5 is a prime factor on the natural numbers.

So I am guessing that 100! has 20 zeros, because in counting by fives, we get to 100 after 20 steps.
 
Last edited:
SteveRives said:
Your question is the same as finding out how often 5 is a prime factor on the natural numbers.

So I am guessing that 100! has 20 zeros, because in counting by fives, we get to 100 after 20 steps.
You are WRONG, SteveRives.
24 zeros is the answer.
(*)You will have a number which is divisible by 5 for every 5 successive integer.
(*)You will have a number which is divisible by 25 (ie 5.5) for every 25 successive integer.
(*)You will have a number which is divisible by 125 (ie 5.5.5) for every 125 successive integer, and so on...
So you will have 20 numbers which is divisible by 5 (included numbers that is divisible by 25).
And you will have 4 numbers which is divisible by 25.
So you will have: 20 + 4 = 24 zeros in 100!
In general, you will have: n! has:
C = \left[ \frac{n}{5} \right] + \left[ \frac{n}{5 ^ 2} \right] + \left[ \frac{n}{5 ^ 3} \right] + ... + \left[ \frac{n}{5 ^ q} \right] zeros at the end.
You can stop the sum at any q such that:
\left[ \frac{n}{5 ^ q} \right] = 0
Where [...] denotes the integer part of a number. For example : [1.55] = 1, [0.77] = 0, [14.333333] = 14.
Viet Dao,
 
Last edited:
Yes, I just realized that we have to add four more! Why? Because in 20 steps, there are four times that five is reduplicated.

Finding the number of times 5 is a prime factor is right, but, for example, when we get to 25 it is in there twice. And so 20 / 5 is 4. There are four times that happens. Add that back into the 20 and we get 24.
 
The formula given in this thread is inaccurate. It's not the rounding function, but the floor function that should be used.

floor(n/5)+floor(n/(52))+floor(n/(53))+...

This is because rounding each quotient may occasionally result in counts that are too high. For example: 999!

999/5=199.8~200 (correct value: 199)
999/25=39.96~40 (correct value: 39)
999/125=7.992~8 (correct value: 7)
999/625=1.5984~2 (correct value: 1)
Total: 250 (correct value: 246)

As you can see, there's an error of 4 zeros!

Edit: Never mind. I misinterpreted his symbols. The Rounding function is usually indicated by square brackets. The Floor, or the integer part of the number, is indicated by L-shaped brackets. So naturally without reading the entire post, I jumped to a conclusion.
 
Last edited:
for writing a program it may be useful to get the number of zeros at the end of a factorial without usage of floor function:

n = p(1)*5 + q(1)

p(1) = p(2)*5 + q(2)
p(2) = p(3)*5 + q(3)

etc

p(n-1) = p(n)*5 + q(n)

so,

p(n) = (p(n-1) - q(n))/5
p(n-1) = (p(n-2) - q(n-1))/5

etc

where q(i) is actually p(i-1) mod 5 , or q(i) = p(i-1)%5
 
You provided the easiest solution.

One 5 each from 5,10,15,20,30,35,40,45,55...70,80,85…
(excluded 25,50,75,100) so that's 15x1=15

Two 5s each from 25,50,100
Three 5s from 75

15+2x3+3x1=24

It was an easy problem. Why did I think its tough :/
Thanks for answering, everyone.
 
This thread is 7 years old.
 

Similar threads

  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 6 ·
Replies
6
Views
2K
  • · Replies 7 ·
Replies
7
Views
1K
  • · Replies 3 ·
Replies
3
Views
2K
  • · Replies 23 ·
Replies
23
Views
2K
  • · Replies 10 ·
Replies
10
Views
2K
  • · Replies 2 ·
Replies
2
Views
2K
Replies
1
Views
1K
Replies
8
Views
3K
  • · Replies 15 ·
Replies
15
Views
5K