Я пишу основную функцию рекурсии, которая принимает целое число n и возвращает сумму первых n обратных. Ввод 2 должно привести к 1,5, и ввод 0 должен возвращать 0.Python 3 Рекурсия - максимальная глубина превышена
sum_to (2) = (1 + 1/2) = 1,5
Вот что у меня есть:
def sum_to(n):
if n>0:
return sum_to(1+1/n) # Not sure if this is correct
return 0
Но все, что я получаю, - это максимальная глубина рекурсии. Я знаю, что могу перечислить списки, но рекурсия действительно интригующая, и я хочу найти решение, использующее его.
«Не уверен, что это правильно». Согласно вашей программе sum_to (1) совпадает с 1 + sum_to (1). Вы не уверены, что это правильно? – Goyo
это связано с вашим вопросом случайно? http://stackoverflow.com/questions/31323495/1-1-2-1-3-%C2%BC-finding-sum –
Если вы продолжаете добавлять 1, n будет равным 0? – AJPennster