Maison > Article > développement back-end > Comment implémenter une classe PHP pour calculer la factorielle d'un entier ? (explication détaillée du code)
Cet article vous présente principalement l'implémentation d'une classe PHP pour calculer la factorielle des entiers.
Étude de référence recommandée : "Tutoriel PHP"
Tout d'abord, comprenons brièvement ce qu'est le Factorial ?
La factorielle d'un entier positif est le produit de tous les entiers positifs inférieurs et égaux à ce nombre, et la factorielle de 0 est 1. La factorielle d’un nombre naturel n s’écrit n!.
Pour faire simple, par exemple, la factorielle de 6 est 6 !=1*2*3*4*5*6
Alors comment mettre en œuvre la classe PHP pour calculer des entiers ?
Le code d'implémentation est le suivant :
<?php class factorial_of_a_number { protected $_n; public function __construct($n) { if (!is_int($n)) { throw new InvalidArgumentException('Not a number or missing argument'); } $this->_n = $n; } public function result() { $factorial = 1; for ($i = 1; $i <= $this->_n; $i++) { $factorial *= $i; } return $factorial; } } $newfactorial = New factorial_of_a_number(5); echo $newfactorial->result(); ?>
Le code ci-dessus sert à calculer la factorielle de 5 et le résultat de sortie est 120.
Introduction aux fonctions associées :
La fonction is_int() détecte si une variable est un entier.
Fonction __construct() Crée un nouvel objet SimpleXMLElement. PHP 5 permet aux développeurs de définir une méthode comme constructeur dans une classe. Les classes avec un constructeur appelleront cette méthode à chaque fois qu'un nouvel objet est créé, elle est donc très appropriée pour effectuer un travail d'initialisation avant d'utiliser l'objet.
Nous pouvons utiliser un schéma logique pour le représenter :
Cet article présente la méthode d'implémentation d'une classe PHP pour calculer une factorielle entière, qui a une certaine référence Valeur, j'espère que cela aidera les amis dans le besoin !
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!