¡Hola a todos! Bienvenidos a este nuevo post. Alguna vez te has preguntado como funcionan la computadoras, has investigado y te han dicho que funcionan mediante un lenguaje especial, el cual está escrito en Binario es decir, con ceros (0) y unos (1).
Sin embargo nosotros no escribimos en Binario, si no con palabras en un determinado idioma, con números, etc. y aún así la computadora logra entender nuestro lenguaje, ya que cada palabra o número lo transforma en Números binarios, que la computadora puede entender.
Por esta razón en esta ocasión les traigo un tutorial que consiste en ingresar cualquier número natural y que el código te devuelva ese número escrito en Binario. Escrito en el leguanje de Programación Python, el cual posee una estructura poco compleja y es muy simple de utilizar.
En primer lugar tendremos que instalar el lenguaje de programación Python en nuestra PC, mediante esta página: https://www.python.org/downloads/
Abriremos nuestro editor de código, en este caso se utilizará Visual Studio Code, el cual podrás descargar desde este link:
Luego de que hayas descargado el editor de codigo, procederemos a comenzar a programar.
Para obtener un numero binario, por definición se debe difidir el numero entre 2, sucesivamente, tomando solo la parte real hasta que el cociente sea igual a 1.
- Por lo tanto, comenzaremos creado un nuevo archivo de python llamado ConvertirABinario.py
- Crearemos una función que tendrá el nombre de DecimalToBinary()
- También crearemos una lista con el nombre de binary, que almacenará cada residuo de cada división.
- Posteriormente le pediremos al usuario que ingrese un número, al cual lo tendrémos que convertir a entero (int).
- Luego crearemos nuestras variables inciales: divisor, dividendo, cociente, y residuo.
- El dividendo será el número que ingrese el usuario.
- El divisor será 2, como lo indica la definición de numeros binarios.
- El cociente será la división ( // ) entre el dividendo y el divisor.
- El residuo será el módulo (%) entre el dividendo y el divisor.
def DecimalToBinary():
binary = []
number = int(input("Escribe un número:"))
dividendo = number
divisor = 2
cociente = dividendo//divisor
residuo = dividendo % divisor
Luego imprimiremos en pantalla mediante el método print() el cociente y el residuo de cada division.Tomando en cuenta que tenemos que convertir esos dos valores (cociente y residuo) en texto para que no ocurra un error mediante el método str().
print("Cociente: " +str(cociente), "Residuo: "+str(residuo))
binary.append(residuo)
También, mediante el metodo append() agregaremos cada residuo a la lista binary, que hemos creado anteriormente.
A continuación abriremos un ciclo while, el cual se repetirá hasta que se cumpla una condición. En este caso la condición para que continue el ciclo es que el cociente sea mayor o igual a 1. Cuando sea 1, se detendrá el ciclo y por lo tanto se dejarán de agregar numeros a la lista.
while (cociente >= 1):
dividendo = cociente
cociente = dividendo//divisor
residuo = dividendo % divisor
print("Cociente: " +str(cociente), "Residuo: "+str(residuo))
binary.append(residuo)
- En este ciclo while repetiremos lo mismo que hemos mencionado anteriormente:
- El dividendo ahora será el cociente anterior.
- El cociente será la división del dividendo y divisor
- El residuo el módulo (%) de éstos dos.
- Se imprimirá en pantalla cada cociente y cada residuo obtenido
- Se agregará cada residuo a la lista binary.
binary.reverse()
print(binary)
Finalmente imprimiremos nuestro numero binaro, con print(),sin embargo este es una lista y queremos que nos devuelva un texto o un numero. Así que utilizaremos el siguiente procedimiento:
binary_str = ""
for i in binary:
binary_str += str(i)
binary_int = int(binary_str))
print(binary_int)
return binary_int
- Crearemos una variable llamada binary_str = "" es decir un texto vacío.
- Luego, me diante un ciclo for, pedimos que cada elemento (i) dentro de la lista binary sea añadido al texto binary_str. Es decir, cada residuo se añadirá a esta cadena de texto.
- Depués fuera del ciclo crearemos una variable llamada binary_int, es decir un numero entero, que será la conversión int() de nuestra cadena de texto binary_str.
- Lo imprimimos en pantalla print(binary_int)
- Devolvemos mediante return, nuestro Número Binario, que podrá ser utilizado para otro proceso.
DecimalToBinary()
Luego para ejecutarlo abriremos una nueva terminal en Visual Studio Code.
Terminal----> New Terminal. o con (Ctrl + Shift + ñ)
Y escribiremos allí: python ConvertirABinario.py para ejecutar nuestro código.
Bueno, como podrás observar, en este tutorial convertirmos cualquier número natural en un número binario. Además de entender la lógica de como hacer este algoritmo.
He realizado este post, para que practiquemos juntos la programación, mediante ejercicios variados, ya que la única forma de aprender a hacerlo bien es prácticando bastante. Encotrar problemas de nuestra vida diaria y luego transformarlos a código.
Esto nos ayudará a resolver muchas tareas complejas en muy poco tiempo. Por eso es muy importante aprender a programar.
¿Que te ha parecido este tutorial? Les gustaría ver más tutoriales como este. Consideran que hubo algún error o se podría hacer más fácil. Díganme sus opiniones en los comentarios. Estoy abierto a todo tipo de críticas.
¡Saludos, espero verlos pronto!
0 Comentarios