添加反转的前一个数字以实现 python 中的回文



接受一个数字作为输入,并检查给定的数字是否为回文 如果是回文数字,请在屏幕上打印数字 如果它不是回文数反转该数字并将其添加到以前的数字中,则重复此操作,直到将获得回文数并在屏幕上打印该回文数

输入: 127

输出: 848

如果有人能解决这个问题,我将不胜感激:

n = int(input())
if str(n) == str(n)[::-1]:
print(str(n)[::-1],"is a palindrome")
else:

我应该在 ELSE 条件下写什么

这对我有用:

n = int(input())
while True :
if str(n) == str(n)[::-1]:
print(str(n)[::-1],"is a palindrome")
break
else:
n += int(str(n)[::-1])

一个数学解决方案——不转换为字符串——将是

def revert(x: int) -> int:
x = abs(x)
r = 0
while x:
x, m = divmod(x, 10)
r = r * 10 + m
return r
def findPalindrome(x: int) -> bool:
if x < 0:
return 0
r = revert(x)
if x == r:
return x
else:
return findPalindrome(x + r)

相关内容

  • 没有找到相关文章

最新更新