Product of Digits Recursively

Calculate product of digits recursively.

IntermediatePhase 3 - Level 2: Advanced RecursionExample 4 of 10
product-of-digits-recursively.py
1def product_digits(n):
2 # Base case
3 if n == 0:
4 return 1
5
6 # Recursive case
7 last_digit = n % 10
8 if last_digit == 0:
9 return 0 # Product becomes 0
10 return last_digit * product_digits(n // 10)
11
12# Test
13num = int(input("Enter a number: "))
14result = product_digits(abs(num))
15print(f"Product of digits: {result}")

Output

Enter a number: 234
Product of digits: 24

What's going on

Multiply last digit with product of remaining.

Key Concepts:

Base case: n == 0, return 1
Extract last digit
Multiply with recursive result
Handle zero digit (product becomes 0)