def digit_sum(n):
'''(int)->number
Returns the sum of all the digits in the given integer, n'''
if n<10:
return n
return n%10 + digit_sum(n//10)
def digital_root(n):
'''(int)->number
Returns the resulting sum of the digits in the given integer until it reaches a single digit number; via digit_sum'''
while n>9:
n=sum(digit_sum(n))
return n
はdigit_sum
ためのコードを書き、その後digital_root
を書き込むために再帰を使用します。私はこれについてどうやって行くのですか?どんな助けもありがとう!次のように変更することができますので、これは、その入力を想定して、アカウントに1未満の入力を取ることはありませんデジタルルートループなしのPython
def digit_root(n):
return (n - 1) % 9 + 1
:
私は本当に教授がなぜループを嫌うのだろうと思っていますか? – Maroun
おそらく再帰運動ですか? –