В тази програма ще се научите да намирате факториал на число, използвайки рекурсивна функция.
За да разберете този пример, трябва да имате познанията по следните теми за програмиране на Python:
- Изявление на Python if … else
- Функции на Python
- Python рекурсия
Факториалът на число е произведение на всички цели числа от 1 до това число.
Например факториалът на 6 е 1*2*3*4*5*6 = 720
. Факториалът не е дефиниран за отрицателни числа и факториалът нула е едно, 0! = 1.
Програмен код
# Factorial of a number using recursion def recur_factorial(n): if n == 1: return n else: return n*recur_factorial(n-1) num = 7 # check if the number is negative if num < 0: print("Sorry, factorial does not exist for negative numbers") elif num == 0: print("The factorial of 0 is 1") else: print("The factorial of", num, "is", recur_factorial(num))
Изход
Факториалът на 7 е 5040
Забележка: За да намерите факториал на друго число, променете стойността на num
.
Тук номерът се съхранява в num
. Числото се предава на recur_factorial()
функцията за изчисляване на факториал на числото.