Open In App

PHP Program to Count trailing zeroes in factorial of a number

Last Updated : 14 Jun, 2022
Improve
Improve
Like Article
Like
Save
Share
Report

Given an integer n, write a function that returns count of trailing zeroes in n!.  Examples :

Input: n = 5
Output: 1 
Factorial of 5 is 120 which has one trailing 0.

Input: n = 20
Output: 4
Factorial of 20 is 2432902008176640000 which has
4 trailing zeroes.

Input: n = 100
Output: 24
Trailing 0s in n! = Count of 5s in prime factors of n!
                  = floor(n/5) + floor(n/25) + floor(n/125) + ....

PHP




<?php
// PHP program to count
// trailing 0s in n!
 
// Function to return trailing
// 0s in factorial of n
function findTrailingZeros( $n)
{
    // Initialize result
    $count = 0;
 
    // Keep dividing n by powers
    // of 5 and update count
    for ($i = 5; $n / $i >= 1; $i *= 5)
        $count += $n / $i;
 
    return $count;
}
 
// Driver Code
 
$n = 100;
echo "Count of trailing 0s in ", 100,
     "! is ", findTrailingZeros($n);
 
// This code is contributed by vt_m
?>


Output:

Count of trailing 0s in 100! is 24

Time Complexity:  O(log5n)

Auxiliary Space: O(1)

Please refer complete article on Count trailing zeroes in factorial of a number for more details!


Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads