2017-10-14 8 views
0

正しい出力が得られないのはなぜですか?コード出力がパリンドローム機能で期待どおりに異なる

これは私のコードです:

def main(): 
    num = 111 

    if (isPalindrome(num)): 
     print ("Palindrome",num) 
    else: 
     print ("Not a palindrome", num) 


def isPalindrome(num): 
    temp = num 
    revNum = 1 

    while temp > 0: 
     rightNum = temp%10 
     revNum = revNum * 10 + rightNum 
     temp = temp/10 

    print (revNum) 
    if revNum == num: 
     return True 
    else: 
     return False 

main() 

出力:

inf 
Not a palindrome 111 

それは本当と印刷回文を返す必要があります。なぜ出力が得られないのか分かりません。

+0

「revNum」をゼロで開始します。 – jackarms

+0

私もそれをしました。それは動作していません。 – rvc

+0

btw助けてくれてありがとう。 – rvc

答えて

0
Init 
    revNum = 0 

&使用フロア部門(//)、通常の部門は常にフロート

temp = temp//10 

を結果が参照してください。https://www.programiz.com/python-programming/operators

は、トラブルシューティングのためのprint文でデバッグするようにしてください。

+0

ありがとう!ええ、フロア分割が私を助けました! – rvc

関連する問題