Programa de Python para convertir el sistema Base 4 a número binario

Dado un número N de base 4, la tarea es escribir un programa en Python para imprimir su equivalente binario.

Tabla de conversión:

Ejemplos:

Input       : N=11002233
Output      : 101000010101111
Explanation : From that conversion table we changed 1 to 01, 2 to 10 ,3 to 11 ,0 to 00.
Input : N=321321
Output: 111001111001

Acercarse:

  • Tome una string vacía, diga resultstr.
  • Convertimos el número decimal a string.
  • Atraviesa la string y convierte cada carácter en un número entero
  • Si el número entero es 1 o 0 , antes de convertirlo a binario, agregue ‘0’ a resultstr (porque no podemos tener 01,00 en números enteros)
  • Ahora convierta este entero en una string binaria y concatene la string binaria resultante en resultstr.
  • Convierta resultstr a entero (que elimina los ceros iniciales).
  • Devolver resultadostr.

A continuación se muestra la implementación del enfoque anterior de la siguiente manera:

Python3

# function which converts decimal to binary
def decToBin(num):
 
    # Using default binary conversion functions
    binary = bin(num)
 
    # removing first two character as the
    # result is always in the form 0bXXXXXXX
    # by taking characters after index 2
    binary = binary[2:]
    return binary
 
# function to convert base4 to binary
 
 
def convert(num):
 
    # Taking a empty string
    resultstr = ""
 
    # converting number to string
    numstring = str(num)
 
    # Traversing string
    for i in numstring:
 
        # converting this character to integer
        i = int(i)
 
        # if i is 1 or 0 then add '0' to result
        # string
        if(i == 1 or i == 0):
            resultstr = resultstr+'0'
 
        # passing this integer to get converted to
        # binary
        binary = decToBin(i)
 
        # print(binary)
        # Concatenating this binary string to result
        # string
        resultstr = resultstr+binary
 
    # Converting resultstr to integer
    resultstr = int(resultstr)
 
    # Return result string
    return resultstr
 
 
# Driver code
Number = 11002233
 
# Passing this number to convert function
print(convert(Number))

Producción:

101000010101111

Complejidad de tiempo: O(n) , Espacio auxiliar: O(1)

Aquí n es la longitud del no

Publicación traducida automáticamente

Artículo escrito por vikkycirus 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 *