Programme JavaScript pour rechercher un factoriel de nombre à l'aide de la récursivité

Dans cet exemple, vous apprendrez à écrire un programme JavaScript qui recherche la factorielle d'un nombre à l'aide de la récursivité.

Pour comprendre cet exemple, vous devez avoir la connaissance des sujets de programmation JavaScript suivants:

  • Récursivité JavaScript
  • Instruction JavaScript if… else

La factorielle d'un nombre est le produit de tous les nombres de 1 à ce nombre. Par exemple,

factorielle de 5 est égale à 1 * 2 * 3 * 4 * 5 = 120 .

La factorielle d'un nombre positif n est donnée par:

 factorial of n (n!) = 1 * 2 * 3 * 4… n

La factorielle des nombres négatifs n'existe pas et la factorielle de 0 est 1 .

Exemple: recherche factorielle à l'aide de la récursivité

 // program to find the factorial of a number function factorial(x) ( // if number is 0 if (x == 0) ( return 1; ) // if number is positive else ( return x * factorial(x - 1); ) ) // take input from the user const num = prompt('Enter a positive number: '); // calling factorial() if num is positive if (num>= 0) ( const result = factorial(num); console.log(`The factorial of $(num) is $(result)`); ) else ( console.log('Enter a positive number.'); )

Production

 Entrez un nombre positif: 4 La factorielle de 4 est 24

Dans le programme ci-dessus, l'utilisateur est invité à entrer un nombre.

Lorsque l'utilisateur entre un nombre négatif, un message Entrez un nombre positif. est montré.

Lorsque l'utilisateur entre un nombre positif ou 0 , la fonction factorial(num)est appelée.

  • Si l'utilisateur entre le nombre 0 , le programme renverra 1 .
  • Si l'utilisateur entre un nombre supérieur à 0 , le programme s'appellera de manière récursive en diminuant le nombre.
  • Ce processus se poursuit jusqu'à ce que le nombre devienne 1. Ensuite, lorsque le nombre atteint 0, 1 est renvoyé.

Ici,

 factorial (4) renvoie 4 * factorial (3) factorial (3) renvoie 4 * 3 * factorial (2) factorial (2) renvoie 4 * 3 * 2 * factorial (1) factorial (1) renvoie 4 * 3 * 2 * 1 * factorielle (0) factorielle (0) renvoie 4 * 3 * 2 * 1 * 1

Articles intéressants...