Exemple pour trouver la factorielle d'un entier non négatif (saisi par l'utilisateur) en utilisant la récursivité.
Pour comprendre cet exemple, vous devez avoir la connaissance des rubriques de programmation C ++ suivantes:
- Fonctions C ++
- Types de fonctions définies par l'utilisateur en C ++
- C ++ if, if… else et Nested if… else
- Récursivité C ++
Ce programme prend un entier positif de l'utilisateur et calcule la factorielle de ce nombre. Supposons que l'utilisateur entre 6 puis,
Factorielle sera égale à 1 * 2 * 3 * 4 * 5 * 6 = 720
Vous apprendrez à trouver la factorielle d'un nombre à l'aide d'une fonction récursive dans cet exemple.
Visitez cette page pour savoir comment utiliser les boucles pour calculer les facteurs.
Exemple: calcul factoriel à l'aide de la récursivité
#include using namespace std; int factorial(int n); int main() ( int n; cout <> n; cout << "Factorial of " << n << " = " < 1) return n * factorial(n - 1); else return 1; )
Production
Entrez un entier positif: 6 Factorielle de 6 = 720
Dans le programme ci-dessus, supposons que l'utilisateur entre un nombre 6. Le nombre est passé à la factorial()
fonction.
Dans cette fonction, 6 est multiplié par la factorielle de (6 - 1 = 5). Pour cela, le numéro 5 est de nouveau passé à la factorial()
fonction.
De même dans l'itération suivante, 5 est multiplié par la factorielle de (5 - 1 = 4). Et, 4 est passé à la factorial()
fonction.
Cela continue jusqu'à ce que la valeur atteigne 1 et que la fonction renvoie 1.
À présent, chaque fonction renvoie la valeur pour calculer 1 * 2 * 3 * 4 * 5 * 6 = 720, qui est renvoyée à la main()
fonction.