[英]Adding Digits in a Number (Need Code Explanation)
我在其他地方遇到过此代码段。 它只是将所有数字加到给定的数字中:
def sumDigits(n):
sum = 0
while n > 0:
sum += n % 10
n //= 10
return sum
问题是,我根本没有逻辑。 特别是,我不完全了解循环的作用:
while n > 0:
sum += n % 10 # Why n % 10?
n //= 10 # Again, not sure why we divide the number by 10
有人可以向我提供该算法如何工作的示例吗?
谢谢!
您应该了解两件事:
n % 10
为您提供数字的最右边数字。 例如: 123 % 10 = 3
n // 10
删除数字的最右边数字。 例如: 123 // 10 = 12
因此,如果重复该过程,您将获得所需的结果
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.