失意的多啦

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

【第九题】判断一个整数是否为回文数

方法一:(利用遍历字符串)

#-*- coding:utf-8 -*-

def IsPalindrome(n):
    if (n <= 0):
        return False
    nstr = str(n)
    length = len(nstr)
    print(length)
    for i in range((length//2)+1):
        if (nstr[i] == nstr[length-1-i]):
            print("nstr[i]:",nstr[i])
            print("nstr[length-1-i]", nstr[length-1-i])
            if (i >= length//2):
                return True
            continue
        return False

print(IsPalindrome(12321))
View Code

 

 

 

方法二:标志位

#-*- coding:utf-8 -*-

def IsPalindrome(n):
    if (n <= 0):
        return False
    f = True
    nstr = str(n)
    length = len(nstr)
    for i in range((length//2)):
        if nstr[i] != nstr[-1-i]:
            f = False
            break
    if f:
        print('%d 是一个回文数' % n)
    else:
        print("%d 不是一个回文数" % n)

IsPalindrome(123421)
View Code

 

 

 方法三:找出5位数中所有的回文数

def IsPalindrome():
    for i in range(10000,100000):
        s = str(i)
        if s[0] == s[-1] and s[1] == s[-2]:
            print(i)

IsPalindrome()
View Code

 

posted on 2019-10-29 17:08  失意的多啦  阅读(153)  评论(0)    收藏  举报