Product of Digits Recursively

Calculate product of digits recursively.

Logic BuildingIntermediate
Logic Building
def product_digits(n):
    # Base case
    if n == 0:
        return 1
    
    # Recursive case
    last_digit = n % 10
    if last_digit == 0:
        return 0  # Product becomes 0
    return last_digit * product_digits(n // 10)

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

Output

Enter a number: 234
Product of digits: 24

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)