В Python я определяю факториальную функцию:
def fact(n):
if n == 1:
return n
else:
return n * fact(n-1)
print(fact(100))
и следующим образом в Джулии:
function fact(n)
if n == 1
n
else
n * fact(n-1)
end
end
println(fact(100))
Программа python возвращает очень большое число для оценки 100 (как и ожидалось). Julia возвращает 0. С меньшим числом (например, 10) оба они работают.
У меня есть два вопроса:
- Почему Python обрабатывает это нормально, а Julia - нет.
- Почему Джулия не выдает ошибку и просто печатает 0 вместо этого?