根據的維基百科說明:
迴文數或回文數是指一個像14641這樣「對稱」的數,即:將這個數的數字按相反的順序重新排列後,所得到的數和原來的數一樣。這裡,「回文」是指像「媽媽愛我,我愛媽媽」這樣的,正讀反讀都相同的單詞或句子。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 | # 方法一 while True: try: n = int(input()) # 小於零,或是個位數為零都不會是迴文 if( n < 0 or (n % 10 == 0 and n != 0)): print("不是回文數") else: # 翻轉後的數字 rNum = 0 while(n > rNum): rNum = rNum * 10 + n % 10 n = n // 10 if(n == rNum or n == rNum // 10): print("是回文數") else: print("不是回文數") except EOFError: break # 方法二 while True: try: n = input() length = len(n) m = length / 2 i = 0 yes = True while(i <= m): if( n[i] != n[length - i - 1] ): yes = False break i = i + 1 if yes == True: print("是回文數") else: print("不是回文數") except EOFError: break |
沒有留言:
張貼留言