仔鹿 发表于 2021-12-11 18:24:27

回文数,用python

程序实现功能:从键盘输入一个长度为5的自然数,判断其是否为回文字符串。
1、输入长度为5的自然数字符串
2、如果输入文本长度不等5,那么,输出"输入长度错误!"
3、如果输入的文本不是自然数,那么,输出"输入的不是自然数!"
2、如果x的各位数字字符反向排列所得字符串与x相等,则输出"x是回文否则,输出"x不是回文数"
提示:使用切片运算求解一个字符串的逆序字符串

输入描述

12321

输出描述

12321是回文数

jackz007 发表于 2021-12-11 18:41:20

while True:
    try:
      n = int(input('输入一个整数 : '))
      if n > 9999 and n < 100000 :
            break
      else:
            print("输入长度错误!\n")
    except:
      print('输入的不是自然数!\n')
d , x = 0 , n
while x:
    d = d * 10 + x % 10
    x //= 10
if d == n:
    print(n , '是回文数')
else:
    print(n , '不是回文数')

傻眼貓咪 发表于 2021-12-11 19:03:41

本帖最后由 傻眼貓咪 于 2021-12-11 19:07 编辑

代码:nums = input()
print("输入长度错误!" if len(nums) != 5 else f"{nums} 不是回文数" if nums != nums[::-1] else "输入的不是自然数!" if not nums.isdigit() else f"{nums} 是回文")

无墨zxp 发表于 2021-12-11 22:02:32

s=input('请输入一串字符:')
if len(s)!=5:
    print('输入长度有误!')
elif len(s)==5and not s.isdigit():
    print('输入不是自然数')
else :
    if len(s)==5 and s==s[::-1] and s.isdigit():
      print(s+'是回文',)
    else:
      print(s+'不是回文')

乔正建 发表于 2021-12-11 23:57:49

n=input('请输入一个数字:')
if n.isdigit():
    if len(n)!=5:
      print("输入长度错误!")
    else:
      if n[::-1]==n:
            print(n+'是回文数')
      else:
            print(n+'不是回文数')
else:
    print('输入的不是自然数!')
页: [1]
查看完整版本: 回文数,用python