ホームページ  >  記事  >  バックエンド開発  >  数値の階乗の末尾のゼロを数える PHP プログラム

数値の階乗の末尾のゼロを数える PHP プログラム

王林
王林オリジナル
2024-08-28 13:38:00264ブラウズ

PHP Program to Count Trailing Zeroes in Factorial of a Number

数値の階乗とは何ですか?

記号「!」で示される非負の整数の階乗は、その数値以下のすべての正の整数の積です。言い換えれば、数値の階乗は、その数値にその下のすべての正の整数を乗算することによって取得されます。

たとえば、5 の階乗は次のように計算されます:

5! = 5 × 4 × 3 × 2 × 1 = 120

同様に、0 の階乗は 1 として定義されます。

0! = 1

階乗は、オブジェクトの順列、組み合わせ、配置を数えるために数学や組み合わせ論でよく使用されます。また、確率、微積分、その他の数学のさまざまな分野にも応用できます。

数値の階乗の末尾のゼロを数える PHP プログラム

数値の階乗において、後続のゼロは、階乗の 10 進表現の最後にある連続するゼロの数を指します。

例えば10個! = 10 × 9 × 8 × 7 × 6 × 5 × 4 × 3 × 2 × 1

乗算を実行する

10! = 3,628,800

10 の階乗は 3,628,800 です。

10 の階乗の末尾のゼロは 2 です。これは、階乗の終わりに連続するゼロの数があるためです。

リーリー

出力

リーリー

コードの説明

コード例では、PHP 関数は countTrailingZeroes と呼ばれます。この関数は、指定された数値の階乗内の末尾のゼロの数を計算します。これは、数値を 5 の累乗で割って商を数えることによって行われます。 while ループは、数値が 5 以上である限り継続します。ループ内では、整数除算を使用して数値が 5 で除算され、現在の数値の 5 の因数の数が計算されます。結果の商は $count という変数に追加され、末尾のゼロの数が追跡されます。ループが終了すると、関数から最終カウントが返されます。

関数の下には、関数が値 123 で呼び出されるテスト ケースがあります。これは、countTrailingZeroes 関数を使用して、20 の階乗内の末尾のゼロの数を計算します。結果は $trailingZeroes という変数に保存されます。最後に、結果が echo を使用して表示され、入力数値と階乗内の末尾のゼロの数が提供されます。

この場合、20 の階乗は 2,432,902,008,176,640,000 なので、その階乗の末尾のゼロの数は 4 で、14 の階乗は 87,178,291,200 になります。したがって、階乗内の末尾のゼロの数は 2 です。

結論

提供された PHP プログラムは、指定された数値の階乗内の末尾のゼロの数を効率的に計算します。 while ループを利用して数値を 5 の累乗で割り、末尾のゼロの数を表す商をカウントします。このアプローチを活用することで、プログラムは階乗全体を計算する必要がなくなります。この手法は、階乗の末尾のゼロが 5 の因数から生じるため効果的です。したがって、プログラムは 5 の因数をカウントすることで、末尾のゼロの数を正確に決定します。このコードは、階乗の末尾のゼロを計算するための便利で効率的なソリューションを提供し、さまざまな数学およびプログラミングのアプリケーションに役立ちます。

以上が数値の階乗の末尾のゼロを数える PHP プログラムの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。