Binario a decimal y viceversa en python

Escriba código Python para convertir un número decimal a su equivalente binario y viceversa.

Ejemplo: 

From decimal to binary
Input : 8
Output : 1 0 0 0

From binary to decimal
Input : 100
Output : 4

De decimal a binario  

Keep calling conversion function with n/2  till n > 1,
later perform n % 1 to get MSB of converted binary number.  
Example :- 7
1). 7/2 = Quotient = 3(greater than 1), Remainder = 1.
2). 3/2 = Quotient = 1(not greater than 1), Remainder = 1.
3). 1%2 = Remainder = 1.
Therefore, answer is 111.

Python3

# Function to print binary number for the
# input decimal using recursion
def decimalToBinary(n):
 
    if(n > 1):
        # divide with integral result
        # (discard remainder)
        decimalToBinary(n//2)
 
     
    print(n%2, end=' ')
     
     
 
# Driver code
if __name__ == '__main__':
    decimalToBinary(8)
    print("\n")
    decimalToBinary(18)
    print("\n")
    decimalToBinary(7)
    print("\n")

Producción: 

1 0 0 0 
1 0 0 1 0 
1 1 1 

De decimal a binario usando bin(): 

Python3

# Function to convert Decimal number
# to Binary number
 
def decimalToBinary(n):
    return bin(n).replace("0b","")
 
# Driver code
if __name__ == '__main__':
    print(decimalToBinary(8))
    print(decimalToBinary(18))
    print(decimalToBinary(7))

Producción: 

1000
10010
111

Binario a decimal 

Example -: 1011
1). Take modulo of given binary number with 10. 
    (1011 % 10 = 1)
2). Multiply rem with 2 raised to the power
    it's position from right end. 
    (1 * 2^0)
    Note that we start counting position with 0. 
3). Add result with previously generated result.
    decimal = decimal + (1 * 2^0)
4). Update binary number by dividing it by 10.
    (1011 / 10 = 101)
5). Keep repeating upper steps till binary > 0.

Final Conversion -: (1 * 2^3) + (0 * 2^2) +
                 (1 * 2^1) + (1 * 2^0) = 11

Python3

# Function calculates the decimal equivalent
# to given binary number
 
def binaryToDecimal(binary):
     
    binary1 = binary
    decimal, i, n = 0, 0, 0
    while(binary != 0):
        dec = binary % 10
        decimal = decimal + dec * pow(2, i)
        binary = binary//10
        i += 1
    print(decimal)   
     
 
# Driver code
if __name__ == '__main__':
    binaryToDecimal(100)
    binaryToDecimal(101)
    binaryToDecimal(1001)

Producción: 

4
5
9

De binario a decimal usando int(): 

Python3

# Function to convert Binary number
# to Decimal number
 
def binaryToDecimal(n):
    return int(n,2)
 
 
# Driver code
if __name__ == '__main__':
    print(binaryToDecimal('100'))
    print(binaryToDecimal('101'))
    print(binaryToDecimal('1001'))

Producción: 

4
5
9

Este artículo es una contribución de Pushpanjali Chauhan . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
 

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *