[Tutor] largest palindrome number

surya k suryak at live.com
Thu Aug 25 18:49:08 CEST 2011


Hi,

I'm doing a puzzle where it asked me to find the largest palindrome number
formed by the product of two three-digit numbers. They mentioned an example
saying that 9009 is the largest palindrome number formed by two two-digit
numbers (99 * 91).

I've written my code this way.. and I tested it with the given example and I
got it right!

*Logic I used :*
largest two digit number is 99 and three digit number is 999.. so largest
product of two two-digit numbers is < 100*100 and for three-digit numbers is
< 1000*1000.
So, I used a for loop and it assigns a palindromic value to *PNum* till it
is  < 100*100 (for 2 digit number) and < 1000*1000 (for three-digit
number)..
Thus it stops at the max possible palindromic value, which is what we want.


def palindrome (n) :

    TempN = n
    rev  = 0
    while n != 0 :
        k = n % 10
     rev = (rev * 10) + k
     n = n / 10
    if  TempN == rev :
        return TempN # Palindrome
    else :
     return 0 # not Palindrome


for i in range (1,100) :
    for j in range (i,100) :
        Temp = palindrome(i*j)
        if Temp < 10000 and Temp != 0 :
           PNum = Temp
print PNum



So, for getting the largest palindrome number formed by two three-digit
numbers, I changed 100 to 1000 and 1,00,00 to 1,000,000 in the highlighted
area. Thus I got the answer to be 888888. When I submitted the answer, its
saying wrong!

Where I'm going wrong ?
help me, please !
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/tutor/attachments/20110825/0813f325/attachment.html>


More information about the Tutor mailing list