Программа на JavaScript для поиска факториала числа с помощью рекурсии

В этом примере вы научитесь писать программу на JavaScript, которая находит факториал числа с помощью рекурсии.

Чтобы понять этот пример, вы должны знать следующие темы программирования JavaScript:

  • Рекурсия JavaScript
  • Оператор JavaScript if… else

Факториал числа - это произведение всех чисел от 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

Интересные статьи...