Введение
В математике факториалом неотрицательного целого числа n, обозначенного как n!, является произведение всех положительных целых чисел, меньших или равных n. Например, 5! = 5 x 4 x 3 x 2 x 1 = 120. В этом испытании вы напишете функцию на Python для вычисления факториала заданного числа с использованием рекурсии.
Факториал
Напишите функцию factorial(num), которая принимает неотрицательное целое число num в качестве аргумента и возвращает его факториал. Функция должна использовать рекурсию для вычисления факториала. Если num меньше или равно 1, верните 1. В противном случае верните произведение num и факториала num - 1. Функция должна выбросить исключение, если num является отрицательным или вещественным числом.
def factorial(num):
if not ((num >= 0) and (num % 1 == 0)):
raise Exception("Number can't be floating point or negative.")
return 1 if num == 0 else num * factorial(num - 1)
factorial(6) ## 720
Резюме
В этом испытании вы узнали, как вычислять факториал числа с использованием рекурсии. Также вы узнали, как обрабатывать исключения в Python.