Sum digits of an integer: Difference between revisions
Content added Content deleted
(→{{header|Vlang}}: Rename "Vlang" in "V (Vlang)") |
(Python 3, simplify) |
||
Line 3,375: | Line 3,375: | ||
or |
or |
||
<syntaxhighlight lang="python">def |
<syntaxhighlight lang="python">def sumDigits(num, base=10): |
||
output = [] |
|||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
def sumDigits(num, base=10): |
|||
if base < 2: |
if base < 2: |
||
print |
print("Error: base must be at least 2") |
||
return |
return |
||
num, sum = abs(num), 0 |
|||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
print |
print(sumDigits(1)) |
||
print |
print(sumDigits(12345)) |
||
print |
print(sumDigits(-123045)) |
||
print |
print(sumDigits(0xfe, 16)) |
||
print |
print(sumDigits(0xf0e, 16))</syntaxhighlight> |
||
{{out}} |
{{out}} |
||
<pre> |
<pre> |
||
Line 3,402: | Line 3,399: | ||
</pre> |
</pre> |
||
The following does no error checking and requires non-base 10 numbers passed as string arguments: |
The following does no error checking and requires non-base 10 numbers passed as string arguments: |
||
<syntaxhighlight lang="python"> |
<syntaxhighlight lang="python">def sumDigits(num, base=10): |
||
⚫ | |||
def sumDigits(num, base=10): |
|||
⚫ | |||
print |
print(sumDigits(1)) |
||
print |
print(sumDigits(12345)) |
||
print |
print(sumDigits(123045)) |
||
print |
print(sumDigits('fe', 16)) |
||
print |
print(sumDigits("f0e", 16))</syntaxhighlight> |
||
Each digit is base converted as it's summed. |
Each digit is base converted as it's summed. |
||