Для решения используется рекурсирующая функция. Вызываем функцию с числом, факториал которого надо подсчитать, например 20 => print(factorial(20)). Из функции возвращается введенное число умноженное на результат этой-же функции, но для числа на 1 меньше. Т.е. ф-ция вызывает сама себя до тех пор, пока число не станет 1
def factorial(x):
if (x == 1):
return 1
else:
return x * factorial(x - 1)
print(factorial(20))
Объяснение:
Для решения используется рекурсирующая функция. Вызываем функцию с числом, факториал которого надо подсчитать, например 20 => print(factorial(20)). Из функции возвращается введенное число умноженное на результат этой-же функции, но для числа на 1 меньше. Т.е. ф-ция вызывает сама себя до тех пор, пока число не станет 1