Python 中反轉整數
一個單詞或一個數字,當其字元或數字顛倒時,如果它保持不變,則稱為迴文。本文將介紹一些通過反轉提供的數字來檢查數字是否為迴文的方法。
在 Python 中使用數學方法檢查數字是否為迴文
我們可以使用數學方法檢查一個數字是否是迴文數。該方法首先將號碼反轉,然後將反轉後的號碼與原號碼進行核對。如果兩個值相同,則該數字是迴文數。我們可以應用模數、加法、乘法和除法等數學運算來反轉數字。
例如,使用 input()
函式請求使用者輸入並將其儲存到 original_number
變數中。建立一個變數 copy_number
並在其中儲存 original number
的副本。建立另一個變數 reversed_number
,並將其初始化為 0
。使用 while
迴圈檢查 original_number
是否大於 0
。在迴圈內,將 orignal_number
除以 10
的餘數儲存在 remainder
變數中。使用模 %
求餘數。然後,將 reversed_number
乘以 10
並加上 remainder
。將值儲存在 reversed_number
變數中。接下來,將 original_number
除以 10
並將值儲存在相同的 orginal_number
變數中。在迴圈外檢查 copy_number
和 reversed_number
的值是否相同。如果值相同,則列印訊息說它是迴文,反之亦然。
在下面的示例中,original_number
的狀態在每次迭代中都會發生變化,因此我們將其副本儲存在變數 copy_number
中。使用者給出的數字是 12321
,反過來也是一樣的,程式顯示是迴文。因此,我們可以使用數學方法來檢查一個數字是否是迴文。
示例程式碼:
#python 3.x
original_number = int(input('Enter an integer: '))
copy_number = original_number
reversed_number = 0
while original_number > 0:
remainder = original_number % 10
reversed_number = reversed_number * 10 + remainder
original_number = original_number // 10
if copy_number == reversed_number:
print(copy_number, 'is a palindrome number')
else:
print(copy_number, 'is not a palindrome number')
輸出:
Enter an integer: 12321
12321 is a palindrome number
在 Python 中使用字串反轉方法檢查數字是否為迴文
我們可以使用 Python 中的字串反轉方法來檢查數字是否為迴文。我們可以使用 [::-1]
簡寫操作進行迴文檢查。它是用於反轉可迭代物件(即列表、字串、元組等)的單行。當操作符處理字串時,我們可以將整數值轉換為字串,反轉字串,然後將其轉換為整數。
例如,從使用者那裡獲取一個整數輸入並將其儲存在 number
變數中。使用 str()
函式將 number
轉換為字串,並對其使用 [::-1]
操作。用 int()
函式包裝整個表示式以將反向值轉換為整數。最後,使用 if
條件將 number
變數與反轉字串進行比較,並相應地顯示訊息。
在下面的示例中,我們將一個整數作為輸入,將其轉換為字串,然後將其反轉。然後將反轉的數字與整數進行比較,並與 number
變數進行比較。當我們反轉數字 454
時,它變成了相同的,但是當我們反轉數字 456
時,它變成了 654
。因此,我們發現 number
變數是否是迴文。
示例程式碼:
#python 3.x
number = int(input('Enter a number : '))
if number == int(str(number)[::-1]):
print(number, 'is palindrome.')
else:
print(number, 'is not palindrome.')
輸出:
Enter a number : 454
454 is palindrome.
Enter a number : 456
456 is not palindrome.
在 Python 中使用列表反轉方法查詢數字是否為迴文
使用 List 反轉方法,我們可以反轉數字並檢查它是否是迴文。我們可以要求輸入整數並使用 str()
函式將其轉換為字串。可以使用 list()
函式將字串轉換為列表。我們可以使用 reverse()
函式來反轉列表項。我們可以使用 ' '
分隔符和 join()
方法將列表項轉換為字串。最後,我們可以返回生成字串的整數表示。因此,我們可以將反轉後的數字與原始數字進行比較,以檢查它是否是迴文。
例如,建立一個變數 original_number
並儲存使用者詢問的輸入。應用 str()
函式將數字轉換為字串,然後應用 list()
函式將列表轉換為字串。將結果儲存在 lst_number
變數中。在 lst_number
上使用 reverse()
函式來反轉列表元素。使用 ''
分隔符呼叫 lst_number
上的 join()
方法將列表項轉換為單個字串。使用 int()
函式將字串轉換為整數並將其與 original_number
進行比較。因此,我們可以確定該數字是否為迴文數。
示例程式碼:
#python 3.x
original_number = int(input('Enter an integer : '))
lst_number = list(str(original_number))
lst_number.reverse()
reversed_number = ''.join(lst_number)
if (original_number == int(reversed_number)):
print(original_number, 'is palindrome.')
else:
print(original_number, 'is not palindrome.')
輸出:
Enter an integer : 99
99 is palindrome.