Maison > Article > développement back-end > Programme PHP pour calculer le nombre de zéros à droite dans la factorielle d'un nombre
La factorielle d'un entier non négatif, désignée par le symbole "!", est le produit de tous les entiers positifs inférieurs ou égaux à ce nombre. En d'autres termes, la factorielle d'un nombre est obtenue en multipliant ce nombre par tous. les entiers positifs en dessous.
Par exemple, la factorielle de 5 est calculée comme suit :
5 = 5 x 4 x 3 x 2 x 1 = 120
De même, la factorielle de 0 est définie comme 1 :
0 = 1
Les facteurs sont souvent utilisés en mathématiques et en combinatoire pour compter les permutations, les combinaisons et les arrangements d'objets. Ils ont également des applications en probabilités, en calcul et dans divers autres domaines des mathématiques.
Dans la factorielle d'un nombre, les zéros à droite font référence au nombre de zéros consécutifs dans la représentation décimale de la factorielle.
Par exemple 10 = 10 x 9 x 8 x 7 x 6 x 5 x 4 x 3 x 2 x 1
Effectuer des opérations de multiplication
10 = 3 628 800
La factorielle de 10 est 3 628 800.
Les zéros finaux dans une factorielle de 10 sont 2 car le nombre de zéros consécutifs à la fin de la factorielle.
<?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."; ?>
The factorial of 20 has 4 trailing zeroes. The factorial of 14 has 2 trailing zeroes.
Une fonction PHP appelée countTrailingZeroes est appelée dans l'exemple de code. Cette fonction compte le nombre de zéros à droite dans la factorielle d'un nombre donné. Pour ce faire, il divise le nombre par une puissance de 5 et calcule le quotient. Tant que le nombre est supérieur ou égal à 5, la boucle while continuera à s'exécuter. À l’intérieur de la boucle, le nombre est divisé par 5 en utilisant une division entière pour calculer le nombre de facteurs 5 dans le nombre actuel. Ajoutez le quotient obtenu à une variable appelée $count, qui garde une trace du nombre de zéros à droite. Une fois la boucle terminée, renvoyez la valeur de comptage finale de la fonction.
Sous la fonction, il y a un scénario de test où la fonction est appelée avec une valeur de 123. Ce scénario de test compte le nombre de zéros à droite dans la factorielle de 20 à l'aide de la fonction countTrailingZeroes. Les résultats sont stockés dans une variable appelée $trailingZeroes. Enfin, utilisez echo pour afficher le résultat, en fournissant le numéro d'entrée et le nombre de zéros à droite dans sa factorielle.
Dans ce cas, la factorielle de 20 est 2 432 902 008 176 640 000, donc sa factorielle a 4 zéros à la fin, tandis que la factorielle de 14 est 87 178 291 200. Il y a donc 2 zéros à la fin de sa factorielle.
Fourni un programme PHP pour calculer efficacement le nombre de zéros à droite dans la factorielle d'un nombre donné. Il utilise une boucle while pour diviser le nombre par une puissance de 5 et calcule le quotient, représentant le nombre de zéros à droite. En utilisant cette approche, le programme évite d'avoir à calculer la factorielle entière. Cette technique fonctionne car les zéros de fin de la factorielle proviennent du facteur 5. Par conséquent, en calculant des facteurs de 5, le programme peut déterminer avec précision le nombre de zéros à droite. Ce code fournit une solution pratique et efficace pour calculer les zéros à droite dans les factorielles, utile pour une variété d'applications mathématiques et de programmation.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!