14. Posicionate y desplazate


#1

No entiendo las instrucciones.

01 Vamos a crear una función invierte_bit que tome los datos de entrada (numero, n).

02 Invertimos el nth bit (con los bit de unos siendo el primer bit) y lo guardamos en resultado.

03 Return the result of calling bin(result).


#2

La verdad es que no entiedo y entonces estoy inventando.

def invierte_bit(numero, n):
    mask = numero << n 
    resultado = mask ^ n
    return bin(resultado)

#3

Bueno, despues de rebentarme la cabeza, y adivinar lo que realmente se queria con el ejercicio, por fin resolvi el problema :exploding_head:.

def invierte_bit(numero, n):
    mascara = 0b1 << (n-1)
    resultado = numero ^ mascara
    return bin(resultado)

mi consejo es que cambien la instruccion #2 por algo así como:

02 Invertimos el bit n del numero y lo guardamos en la variable resultado