How to find the largest palindrome made from the product of two 3-digit numbers in Python

2 Answers

0 votes
def is_palindrome(number):
    return str(number) == str(number)[::-1]

largest_palindrome = 0

# range(start, stop, step) 

for num1 in range(999, 99, -1):
    for num2 in range(num1, 99, -1):
        product = num1 * num2
        if product > largest_palindrome and is_palindrome(product):
            largest_palindrome = product
            
print(largest_palindrome)


    
'''
run:
    
906609

'''

 



answered Oct 15, 2023 by avibootz
0 votes
def is_palindrome(number):
    return str(number) == str(number)[::-1]

def largest_palindrome():
    max_palindrome = 0
    # range(start, stop, step) 
    for i in range(999, 99, -1):  # Loop from 999 down to 100
        for j in range(i, 99, -1):  # Avoid duplicate calculations
            product = i * j
            if product > max_palindrome and is_palindrome(product):
                max_palindrome = product

    return max_palindrome

print(largest_palindrome())



'''
run:

906609

'''

 



answered Jul 29, 2025 by avibootz
...