3.5.2 Número Decimal a Binario – Algoritmo Básico en Python

Los números decimales se convierten a base binaria para mostrarlos por ejemplo en códigos de barra.

La base numérica binaria es ampliamente usada en informática o computación.

Ejemplo 1. Cinco en binario

Para convertir el número Decimal 5 en Binario hay que descomponer el número en la nueva base numérica, para luego trabajar con los residuos y ubicar cada uno desde la posición menos significativa a la más significativa.

Las operaciones se basan principalmente en el uso de cocientes, residuos y acumuladores y el proceso se muestra en la figura:

convertir un decimal a binario, diagrama de FlujoObserve la diferencia en las operaciones para el divisor y la base, las operaciones son similares a las del ejercicio de Binario a Decimal.

Cambia el divisor y la ponderación usadas, sin embargo las operaciones seguirán siendo básicamente las mismas.

Con esta observación se pueden plantear los cambios de base con otras bases numéricas, por ejemplo la de base 8 también conocida como Octal.

 

Algoritmo Decimal a Binario

Puesto que el ejercicio es una variante del mostrado como Binario a Decimal, se muestra directamente su forma en: Diagrama de flujo, pseudo-código y en Python.

El ejemplo en seudo-código:

Proceso DecimalBinario
	Leer decimal
	binario ← 0
	i ← 0
	Mientras decimal > 0
		digito ← decimal mod 2
		decimal ← trunc(decimal/2)
		binario ← binario+digito*10^i
		i ← i + 1
	FinMientras
	Escribir binario
FinProceso

Algoritmo en Python

# Decimal a binario

# INGRESO
decimal = int(input("número decimal: "))

# PROCEDIMIENTO
binario = 0
i = 0
while (decimal>0):
    digito  = decimal%2
    decimal = int(decimal//2)
    binario = binario+digito*(10**i)
    i = i+1
# SALIDA
print("en binario: ",binario)

Resultados en Python

número decimal:5
en binario:  101
>>>

Ejercicios:

  1. Realizar los algoritmos Binario a Decimal y Decimal a Binario usando el lazo Repita-Hasta.
  2. Crear un algoritmo para convertir un número de base numérica x a base y.
    Comprobar el algoritmo usando los valores: 23x númeroy.
    Sugerencia, convierta el número de la base x primero a decimal y luego transforme el resultado a la siguiente base numérica y.