Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Pengaturcaraan C/C++ untuk mengira bilangan sifar mengekor dalam pemfaktoran nombor?

Pengaturcaraan C/C++ untuk mengira bilangan sifar mengekor dalam pemfaktoran nombor?

PHPz
PHPzke hadapan
2023-09-20 22:05:091360semak imbas

Pengaturcaraan C/C++ untuk mengira bilangan sifar mengekor dalam pemfaktoran nombor?

Mengira bilangan sifar tertinggal dalam nombor faktorial dilakukan dengan mengira bilangan 2s dan 5s dalam faktor nombor itu. Kerana 2*5 bersamaan dengan 10, dan 10 ialah sifar terakhir dalam nombor faktorial.

Contoh

Faktorial bagi 7 = 5040, dan bilangan 0s pada penghujungnya ialah 1.

Mengikut logik kami, 7!=2*3*4*5*6*7, ia mempunyai 3 2s dan 1 5, jadi nombor 0s pada penghujungnya ialah 1.

#include <iostream>
using namespace std;
int main() {
   int n = 45;
   int count = 0;
   for (int i = 5; n / i >= 1; i *= 5)
      count += n / i;
   cout<<"No of trailing 0s in " << n<< "! is " << count;
   return 0;
}

output

No of trailing 0s in 24! is 10

Atas ialah kandungan terperinci Pengaturcaraan C/C++ untuk mengira bilangan sifar mengekor dalam pemfaktoran nombor?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam