Título: Python: Lectura errónea por teclado Publicado por: kurosakisan en 24 Junio 2018, 17:12 pm Hola, hace poco me puse con python y he hecho un programita que pasa numeros binarios a decimal.
def a_Entero(x): print "Este es el numero en binario int", x x = str(x) exp = len(x) - 1 print "Este es el numero en binario string", x print "Este es su tamaño menos uno", exp Decimal = 0 for i in x: Decimal += (int(i) * 2**(exp)) exp-=1 print "el exponente", exp return Decimal while True: x = str(input("escribe el numero en binario:\n")) print a_Entero(x) He aqui una salida: escribe el numero en binario: 0101010101 Este es el numero en binario int 17043521 Este es el numero en binario string 17043521 Este es su tamaño menos uno 7 el exponente 6 el exponente 5 el exponente 4 el exponente 3 el exponente 2 el exponente 1 el exponente 0 el exponente -1 689 fijaos en la tercera línea, porque el número no es el mismo que se ha escrito por pantalla? Si veis alguna mala praxis no dudeis en decirmelo. Gracias! Título: Re: Python: Lectura errónea por teclado Publicado por: ivancea96 en 24 Junio 2018, 18:22 pm Estás usando Python 2, así que los números que comeinzan por 0 están en octal.
(octal) 101010101 == (decimal) 17043521 Título: Re: Python: Lectura errónea por teclado Publicado por: kurosakisan en 24 Junio 2018, 20:33 pm Cierto, era eso.
Muchas gracias :laugh: ;D |