def hexadecimal_a_binario(hexadecimal):
# Convertir el número hexadecimal a binario utilizando la función bin()
binario = bin(int(hexadecimal, 16))[2:] # El [2:] elimina el prefijo '0b' de la representación binaria
return binario
def binario_a_hexadecimal(binario):
# Convertir el número binario a hexadecimal utilizando la función hex()
hexadecimal = hex(int(binario, 2))[2:] # El [2:] elimina el prefijo '0x' de la representación hexadecimal
return hexadecimal.upper() # Convertir a mayúsculas para la salida
# Función para convertir un número entero decimal a su forma binaria utilizando divisiones sucesivas
def decimal_a_binario(decimal):
if decimal == 0:
return '0'
binario = ''
while decimal > 0:
binario = str(decimal % 2) + binario
decimal //= 2
return binario
# Función para convertir un número binario a su forma decimal
def binario_a_decimal(binario):
decimal = 0
longitud = len(binario)
for i in range(longitud):
decimal += int(binario[i]) * (2 ** (longitud - i - 1))
return decimal
# Ejemplo de uso
numero_hexadecimal = "1A3"
print("Número hexadecimal:", numero_hexadecimal)
print("Número binario:", hexadecimal_a_binario(numero_hexadecimal))
print()
numero_binario = "101101"
print("Número binario:", numero_binario)
print("Número hexadecimal:", binario_a_hexadecimal(numero_binario))
print()
# Ejemplo de uso de conversiones manuales
numero_decimal = 25
print("Número decimal:", numero_decimal)
print("Número binario:", decimal_a_binario(numero_decimal))
print()
numero_binario = "1101"
print("Número binario:", numero_binario)
print("Número decimal:", binario_a_decimal(numero_binario))