Рассмотрим следующую рекурсивную факториальную функцию:
fact(n) =
if (n = 0) return 1
return n * fact(n - 1)
Вышеупомянутая функция сходится для всех положительных целых чисел, включая ноль. Однако он не сходится для отрицательных целых чисел.
Далее рассмотрим следующую программу:
fact(n) =
if (n < 0) return 0
if (n = 0) return 1
return n * fact(n - 1)
Вышеупомянутая функция сходится для всех целых чисел.
Я хотел знать, как бы вы статически определили, сходится ли рекурсивная функция.