どういうわけか、それを実行すると、以下に示す方法で、数値のすべての約数を追加できる関数を実行する必要があります。
これは私を夢中にさせています、私は約1時間同じ問題に直面しています。
def sum_divisors(n):
# Return the sum of all divisors of n, not including n
divisor = 1
while divisor < n:
if n%divisor==0:
return divisor
divisor = divisor + 1
else:
divisor = divisor + 1
print(sum_divisors(6)) # Should be 1+2+3=6
print(sum_divisors(12)) # Should be 1+2+3+4+6=16
def sum_divisors(n):
total = [0]
divisors = 1
while divisors < n:
if n % divisors == 0:
result.append(divisors)
else:
pass
divisors += 1
return sum(total)
5行目にif条件が存在する必要があるため、0に対しても必要な結果が得られます。
if(num==0):
return result;