Sum of Digits Recursively

Calculate sum of digits recursively.

Logic BuildingIntermediate
Logic Building
def sum_digits(n):
    # Base case
    if n == 0:
        return 0
    
    # Recursive case
    return (n % 10) + sum_digits(n // 10)

# Test
num = int(input("Enter a number: "))
result = sum_digits(abs(num))
print(f"Sum of digits: {result}")

Output

Enter a number: 1234
Sum of digits: 10

Extract last digit and recurse on remaining.

Key Concepts:

  • Base case: n == 0, return 0
  • Extract last digit: n % 10
  • Recurse on remaining: n // 10
  • Add digit to recursive result