Check Palindrome Recursively

Check if a number is palindrome recursively.

Logic BuildingIntermediate
Logic Building
def reverse_number(n, rev=0):
    if n == 0:
        return rev
    last_digit = n % 10
    rev = rev * 10 + last_digit
    return reverse_number(n // 10, rev)

# Check palindrome
num = int(input("Enter a number: "))
reversed_num = reverse_number(abs(num))
if abs(num) == reversed_num:
    print("Palindrome")
else:
    print("Not a palindrome")

Output

Enter a number: 121
Palindrome

Enter a number: 123
Not a palindrome

Reverse number and compare with original.

Key Concepts:

  • Use reverse function recursively
  • Compare reversed with original
  • If equal, palindrome