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!