今天室友在学习C语言的过程中,看到他在学习一个小例子,判断一个数字是不是回文数,比如11,121,1221都是回文数,他们在倒过来之后都是与自身相等的,我们基于python进行编程。
sum=0
a=eval(input(''))
m=a
while(m):
sum=sum*10+m%10
m=int(m/10)
if sum==a:
print('y')
else:
print('n')
要注意的地方有两处:input()函数输入时是字符串,要记得去掉外面的引号;C语言里第六行只需要m/=10即可(当然在开始时即有int m),然而在python里m/10即便m是整数,这样运算后还是会成为浮点数,那样的话我们就需要强制转换,直接将小数部分抛弃掉。注意这两处就没有问题了。
这是从C语言的代码里直接用python复现,而python本身作为一种高级语言,我们可以直接通过字符串的切片操作来实现回文数的判断。
a=input()
m=a[::-1]
if m==a:
print('y')
else:
print('n')
这样的话是不是比C语言简单了很多呢?