2013-03-07 65 views
0

所以這是我的功課,但我真的不知道該怎麼做一步。在main()函數的最後一步,我想報告如果數字是迴文或不依賴於isPalindrome函數返回的值。我真的不知道該怎麼做,所以你們可以幫忙。謝謝Python的主要功能處理真假

這是我到目前爲止。

# Write code that reverses the number and then returns the reversed number. 

def reverse(number): 
    reverse=0 
    while number>0: 
     reverse = reverse * 10 + number % 10 
     number=number//10 
     return reverse 

#Write code that call the reverse function,processes the value returned by the reverse function and returns True if the number is a palindrome.It will return False if number is not a palindrome. 

def isPalindrome(number): 
    if number == reverse: 
     return True 
    else: 
     return False 

#Write code to prompt the user to enter an integer, calls the isPalindrome function and (depending on the value returned by the isPalindrome function) reports if the number is a palindrome or not. 

def main(): 
    number=int(input("enter number: ")) 

main() 

所以我基本上停留在最後一部分

+1

那是怎麼回事?你想在'number'變量上調用'isPalindrome',並檢查它是否返回'True'或'False',並相應地通知用戶,對吧? – Thomas 2013-03-07 05:46:16

+2

調用'ispalindrome'函數並打印返回狀態 – avasal 2013-03-07 05:46:20

+0

很抱歉忘了提示輸出應該如此出來 輸出樣本 輸入數字:222 該數字是一個迴文數。 另一個示例輸出: 輸入數字:456 該數字不是迴文。 – Jett 2013-03-07 05:53:34

回答

0

reverse功能必須是這樣的

def reverse(number): 
    reverse='' 
    while number>0: 
     reverse = reverse + str(number % 10) 
     number=number//10 
    return reverse 

isPalindrome你要比較字符串,因爲5005如果你將它轉換爲整數,那麼它只會是5而y無法比較505

def isPalindrome(number): 
    if str(number) == reverse(number): 
     return True 
    else: 
     return False 

然後你的功能將起作用。

+0

它非常感謝你。感謝所有回答此問題的人。你們回答真的很快:) – Jett 2013-03-07 06:06:09

1

要調用函數在Python寫的函數的名稱,並添加打開和關閉括號。如果該函數使用任何參數,請在圓括號中添加參數。要保存返回值,請將函數調用分配給一個變量(在Python中稱爲名稱)。

例如:

def foo(user): 
    return 'Hello %s' % user 

result = foo('Jett') 
print result 

執行時上面將打印Hello Jett

0

確保您的致電您的reverse功能!

def is_palindrome(number): 
    return number == reverse(number) 

main你應該有這樣的事情:

def main(): 
    number = int(input("enter number: ")) 
    if is_palindrome(number): 
     print(...) # Fill in the dots 
    else: 
     print(...) # Fill in the dots