Sum of Digits Recursively

Calculate sum of digits recursively.

IntermediatePhase 3 - Level 1: Basic RecursionExample 10 of 10
sum-of-digits-recursively.py
1def sum_digits(n):
2 # Base case
3 if n == 0:
4 return 0
5
6 # Recursive case
7 return (n % 10) + sum_digits(n // 10)
8
9# Test
10num = int(input("Enter a number: "))
11result = sum_digits(abs(num))
12print(f"Sum of digits: {result}")

Output

Enter a number: 1234
Sum of digits: 10

What's going on

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