Обьясните код Python
Скажите почему если не написать IF ELSE то код не получиться и буден работать бесконечно? Оригинальный код
def calculateSum(num):
if num:
return num + calculateSum(num-1)
else:
return 0
res = calculateSum(10)
print(res)
И код который спрашиваю
def calculateSum(num):
return num + calculateSum(num-1)
res = calculateSum(10)
print(res)
Ответы (1 шт):
Автор решения: Виктория
→ Ссылка
Это рекурсия: функция, которая вызывает сама себя. Она Прекратит вызывать саму себя в 2-х случаях: переполнение стека вызовов (условный мешок, в который можно положить несколько вещей в одном порядке, но доставать эти условные вещи нужно только в обратном порядке. При переполнении стека вызовов программа просто зависнет) , или точка выхода из рекурсии.
Оператор else в данном случае остановит вызов рекурсии.