Вот пример, если подается число 942 в функцию, то программа должна вернуть сумму всех цифр полученных чисел, пока не останется одна цифра:
942 --> 9 + 4 + 2 = 15 --> 1 + 5 = 6
На входе подаются только положительные числа.
Вот мой код, я хочу узнать почему он не работает и возвращает мне None:
def digital_root(n):
result = 0
for x in str(n):
result +=int(x)
if len(str(result))>1:
digital_root(result)
elif len(str(result))==1:
return result
print(digital_root(942))
Я сделал не идеальный код, знаю, но мне не нужны другие варианты, прошу сказать почему он не работает и как это исправить.