回文數判斷兩種演算法詳解

2021-10-11 04:11:31 字數 1165 閱讀 5657

判斷乙個整數是否是回文數。回文數是指正序(從左向右)和倒序(從右向左)讀都是一樣的整數,如果是回文數則輸出yes,否則輸出no。

這裡我用了兩種方法:

①採用的是判斷前後對應位置數值相等

def

main

( s )

: n =

len(s)

if n %2==

0:#判斷輸入的數奇數個還是偶數個

m = n//

2for i in

range

(m-1):

if s[i]

== s[

(n-1

)- i]

:continue

else

:print

("no"

)break

else

:print

("yes"

)else

: a = n//

2for i in

range

(a):

if s[i]

== s[

(n-1

)-i]

:continue

else

:print

("no"

)break

else

:print

("yes"

)s =

input

("請輸入乙個回文數:"

)main(s)

②是採用將輸入數字倒序輸出後判斷是否與原來相等

n =

input

("請輸入乙個整數:"

)m =

int(n)

temp = m

num =

0while temp>0:

num = num*

10+ temp%

10#產生使用者數輸入的數的倒序數,temp%10是取最後一位數

temp //=

10#刪除已經取過的的最後一位數

if num == m:

print

("yes"

)else

:print

("no"

)

兩種if判斷

上海面試三 下面是c語言中兩種if語句判斷方式。請問哪種寫法更好?為什麼?int a if a1 第一種判斷方式 if 1a 第二判斷方式 答 這是個主觀題,不過多數人認為第二種好。從執行效率上講,第二種效率更高。另外,在編寫 時如果不小心將 寫成 即變成 1 a 這時編譯器將會給出錯誤提示。而如果...

python 判斷回文數的兩種方法

轉化成字串或列表 class solution object def ispalindrome num return str num str num 1 solution.ispalindrome 54645 純數學方法 class solution object def ispalindrome ...

演算法 判斷回文數

回文數是指正序 從左向右 和倒序 從右向左 讀都是一樣的整數。輸入 121 輸出 true 輸入 121 輸出 false 解釋 從左向右讀,為 121 從右向左讀,為 121 因此它不是乙個回文數。輸入 10 輸出 false 解釋 從右向左讀,為 01 因此它不是乙個回文數。public cla...