123. Yazılışının sonundakı sıfırlar

 

n faktorial ədədinin yazılışındakı sıfırların sayını tapın.

 

Giriş. Bir n (1 ≤ n ≤ 2 * 109) ədədi.

 

Çıxış. n! yazılışının sonundakı sıfırların sayı.

 

Nümunə giriş

Nümunə çıxış

7

1

 

 

HƏLLİ

riyaziyyat

 

Alqoritmin analizi

n ədədinin faktoriyalı 1-dən n-ə qədər olan ədədlərin hasilinə bərabərdir. Hasilin sonunda sıfır 2 və 5-in hasilindən yaranır. Amma n!-nin sadə vuruqlara ayrılmasında 2-lər 5-lərdən çox olduğuna görə, n!-nin sonunda olan sıfırların sayı n!-nin sadə vuruqlara ayrılmasında olan 5-lərin sayına bərabərdir. Bu 5-lərin sayı isə belədir:

 +  +  + …

Cəmləmə növbəti toplanan sıfıra bərabər olana qədər davam edir.

 

Nümunə

100!-nin sonunda neçə sıfır olduğunu tapaq.

 +  +  + … = 20 + 4 = 24

Üçüncü toplanan artıq sıfıra bərabərdir, çünki 100 < 53 = 125.

 

Alqoritmin reallaşdırılması

n ədədini oxuyuruq.

 

scanf("%d",&n); 

 

Formul üzrə cavabı, yəni res-i hesablayırıq.

 

res = 0;

while(n > 0)

{

  n /= 5;

  res += n;

}

 

n!-nin sonunda olan sıfırların sayını çıxarırıq.

 

printf("%d\n",res);

 

Java reallaşdırılması

 

import java.util.*;

 

public class Main

{

  public static void main(String[] args)

  {

    Scanner con = new Scanner(System.in);   

    int n = con.nextInt();

    int res = 0;

    while (n > 0)

    {

      n /= 5;

      res += n;

    }

    System.out.println(res);

    con.close();

  }

}  

 

Python reallaşdırılması

n ədədini oxuyuruq.

 

n = int(input())

 

Formul üzrə cavabı, yəni res-i hesablayırıq.

 

res = 0

while n > 0:

  n = n // 5

  res += n

 

n!-nin sonunda olan sıfırların sayını çıxarırıq.

 

print(res)