階乗数の末尾のゼロの数を計算するには、その数値の因数に含まれる 2 と 5 の数を数えます。 2*5 は 10 に等しく、10 は階乗数の最後のゼロであるためです。
7=5040の階乗、末尾の0の数は1です。
このロジックによれば、7!=2*3*4*5*6*7 となり、2 が 3 つと 5 が 1 つあるため、最後の 0 の数は 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; }
No of trailing 0s in 24! is 10
以上が数値の階乗内の末尾のゼロの数を計算するための C/C++ プログラミング?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。