用户需要输入一个数字并且代码有五位数,如果用户只输四位数,我该怎么做只有四位数呢?
这是:
numero = int(input("por favor ingrese un numero: "))
digito1 = numero // 10000
digito2 = (numero//1000) % 10
digito3 = (numero//100) % 10
digito4 = (numero//10) % 10
digito5 = numero % 10
if digito5 is None and digito1 == digito4 and digito2==digito3:
print ("Es capicua")
if digito1 == digito5 and digito2 == digito4:
print ("Es capicua")
else:
print ("No es capicua")
答案 0 :(得分:1)
看起来你正试图检查numero
是否是回文。这可以通过更简单的方式完成:
numero = int(float(input("por favor ingrese un numero: ")))
if str(numero)==str(numero)[::-1]:
print("Es capicua")
else:
print("No es capicua")
答案 1 :(得分:0)
我不明白'capicua'所以我不是100%肯定你想要做什么,但看起来你想打印'Es capicua'如果整数在中间是对称的(例如,如果你有的话) 1221或12321)和'No es capicua'如果它不是围绕中间对称的(例如1234或12345)。
以下将执行此操作,并针对不同长度的整数进行推广。
numero = int(float(input("por favor ingrese un numero: ")))
digitos = list(str(numero))
symmetricalAroundMedian = True
for i in range(0,int(len(digitos)/2)):
if digitos[i] != digitos[len(digitos)-1-i]:
symmetricalAroundMedian = False
if symmetricalAroundMedian:
print ("Es capicua")
else:
print ("No es capicua")