Heim  >  Artikel  >  Backend-Entwicklung  >  PHP-Programm zum Zählen nachfolgender Nullen in der Fakultät einer Zahl

PHP-Programm zum Zählen nachfolgender Nullen in der Fakultät einer Zahl

王林
王林Original
2024-08-28 13:38:00263Durchsuche

PHP Program to Count Trailing Zeroes in Factorial of a Number

Was ist die Fakultät einer Zahl?

Die Fakultät einer nicht negativen ganzen Zahl, gekennzeichnet durch das Symbol „!“, ist das Produkt aller positiven ganzen Zahlen, die kleiner oder gleich dieser Zahl sind. Mit anderen Worten: Die Fakultät einer Zahl erhält man, indem man diese Zahl mit allen darunter liegenden positiven ganzen Zahlen multipliziert.

Zum Beispiel wird die Fakultät von 5 wie folgt berechnet:

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

In ähnlicher Weise ist die Fakultät von 0 als 1 definiert:

0! = 1

Fakultäten werden in der Mathematik und Kombinatorik häufig verwendet, um Permutationen, Kombinationen und Anordnungen von Objekten zu zählen. Sie finden auch Anwendung in der Wahrscheinlichkeitsrechnung, der Analysis und verschiedenen anderen Bereichen der Mathematik.

PHP-Programm zum Zählen nachfolgender Nullen in der Fakultät einer Zahl

In der Fakultät einer Zahl beziehen sich abschließende Nullen auf die Anzahl aufeinanderfolgender Nullen am Ende der Dezimaldarstellung der Fakultät.

Zum Beispiel 10! = 10 x 9 x 8 x 7 x 6 x 5 x 4 x 3 x 2 x 1

Durchführen der Multiplikation

10! = 3.628.800

Die Fakultät von 10 ist 3.628.800.

Nachgestellte Nullen in der Fakultät von 10 sind 2, weil die Anzahl der aufeinanderfolgenden Nullen am Ende der Fakultät ist.

Beispiel

<?php

function countTrailingZeroes($number) {
   $count = 0;

   // Divide the number by powers of 5 and count the quotient
   // The quotient represents the number of trailing zeroes
   while ($number >= 5) {
      $number = (int) ($number / 5);
      $count += $number;
   }

   return $count;
}

// Test the function
$number = 20;
$trailingZeroes = countTrailingZeroes($number);
echo "The factorial of $number has $trailingZeroes trailing zeroes.<br>";

// Test the function
$number = 14;
$trailingZeroes = countTrailingZeroes($number);
echo "The factorial of $number has $trailingZeroes trailing zeroes.";
?> 

Ausgabe

The factorial of 20 has 4 trailing zeroes.
The factorial of 14 has 2 trailing zeroes.

Erklärung des Codes

Im Beispielcode heißt eine PHP-Funktion countTrailingZeroes. Diese Funktion berechnet die Anzahl der nachgestellten Nullen in der Fakultät einer bestimmten Zahl. Dazu wird die Zahl durch Fünferpotenzen dividiert und der Quotient gezählt. Die while-Schleife läuft so lange weiter, bis die Zahl größer oder gleich 5 ist. Innerhalb der Schleife wird die Zahl mittels Ganzzahldivision durch 5 geteilt, um die Anzahl der Faktoren von 5 in der aktuellen Zahl zu berechnen. Der resultierende Quotient wird zu einer Variablen namens $count addiert, die die Anzahl der nachgestellten Nullen verfolgt. Nach Abschluss der Schleife wird der endgültige Zählerstand von der Funktion zurückgegeben.

Unter der Funktion gibt es einen Testfall, in dem die Funktion mit einem Wert von 123 aufgerufen wird. Dieser berechnet die Anzahl der nachgestellten Nullen in der Fakultät von 20 mithilfe der Funktion countTrailingZeroes. Das Ergebnis wird in einer Variablen namens $trailingZeroes gespeichert. Abschließend wird das Ergebnis mithilfe von Echo angezeigt, wobei die Eingabenummer und die Anzahl der nachgestellten Nullen in der Fakultät bereitgestellt werden.

In diesem Fall beträgt die Fakultät von 20 2.432.902.008.176.640.000, sodass die Anzahl der nachgestellten Nullen in ihrer Fakultät 4 und die Fakultät von 14 87.178.291.200 beträgt. Die Anzahl der nachgestellten Nullen in der Fakultät beträgt also 2.

Fazit

Das bereitgestellte PHP-Programm berechnet effizient die Anzahl der nachgestellten Nullen in der Fakultät einer bestimmten Zahl. Es verwendet eine While-Schleife, um die Zahl durch Fünferpotenzen zu dividieren und den Quotienten zu zählen, der die Anzahl der nachgestellten Nullen darstellt. Durch die Nutzung dieses Ansatzes vermeidet das Programm die Notwendigkeit, die gesamte Fakultät zu berechnen. Diese Technik ist effektiv, da nachgestellte Nullen in einer Fakultät aus Faktoren von 5 resultieren. Daher bestimmt das Programm durch Zählen der Faktoren von 5 genau die Anzahl der nachgestellten Nullen. Dieser Code bietet eine praktische und effiziente Lösung für die Berechnung von nachgestellten Nullen in Fakultäten und hilft bei verschiedenen mathematischen und Programmieranwendungen.

Das obige ist der detaillierte Inhalt vonPHP-Programm zum Zählen nachfolgender Nullen in der Fakultät einer Zahl. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn