У меня есть код, который работает, когда он вводится с возрастающим значением, например, «123», но не когда следующий символ меньше предыдущего (например, «132»), и если есть такое же число, рекурсия никогда не останавливается (например, «122»)
Пожалуйста, укажите на проблему в моем коде, и решение будет высоко оценено.
def sum(term, a, next, b):
if (a > b):
return 0
else:
print (term(a), a, next(a), b)
return term(a) + sum(term, next(a), next, b)
def knocked_down(game):
t1 = lambda x:int(game[x])
t2 = 0
t3 = lambda x: int(game[x])
t4 = len(game)-1
return sum(t1, t2, t3, t4)
results=knocked_down("123")
print('---')
print(results)