Програма JavaScript для пошуку множника числа за допомогою рекурсії

У цьому прикладі ви навчитеся писати програму JavaScript, яка знаходить факторіал числа за допомогою рекурсії.

Щоб зрозуміти цей приклад, ви повинні знати такі теми програмування JavaScript:

  • Рекурсія JavaScript
  • JavaScript, якщо … ще Заява

Факторіал числа - це добуток усіх чисел від 1 до цього числа. Наприклад,

факторіал 5 дорівнює 1 * 2 * 3 * 4 * 5 = 120 .

Факториал додатного числа n задається:

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

Факторіал від’ємних чисел не існує, а факторіал 0 дорівнює 1 .

Приклад: знайти факторіал за допомогою рекурсії

 // 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.'); )

Вихідні дані

 Введіть додатне число: 4 Факторіал 4 дорівнює 24

У наведеній вище програмі користувачеві пропонується ввести номер.

Коли користувач вводить від'ємне число, з'являється повідомлення Введіть додатне число. показано.

Коли користувач вводить додатне число або 0 , функція factorial(num)викликається.

  • Якщо користувач введе число 0 , програма поверне 1 .
  • Якщо користувач вводить число більше 0 , програма буде рекурсивно викликати себе, зменшуючи число.
  • Цей процес триває, поки число не стає 1. Потім, коли число досягає 0, повертається 1.

Ось,

 факторіал (4) повертає 4 * факторіал (3) факторіал (3) повертає 4 * 3 * факторіал (2) факторіал (2) повертає 4 * 3 * 2 * факторіал (1) факторіал (1) повертає 4 * 3 * 2 * 1 * факторіал (0) факторіал (0) повертає 4 * 3 * 2 * 1 * 1

Цікаві статті...