Hoy veremos cómo convertir un número decimal (base 10) a octal (base 8) usando el lenguaje de programación Python y código escrito por nosotros.
Con esto me refiero a que no vamos a usar funciones que el lenguaje provee, sino que nosotros vamos a desarrollar el algoritmo y escribir el código para convertir de decimal a octal en Python.
Al igual que cuando convertimos de decimal a binario, lo que tenemos que hacer es ir dividiendo el número decimal entre la base, que en este caso es 8. Y obtener el residuo de esa división. Todo esto mientras el decimal es mayor a 0.
Si bien podríamos usar Divmod, lo haremos por separado. Es decir, primero vamos a obtener el residuo, agregarlo a la cadena octal y después vamos a dividir al decimal.
En algún momento del tiempo el decimal dejará de ser mayor que 0 y el ciclo se va a detener, regresando así el número octal.
Verás que es realmente sencillo hacer esto con Python.
Una vez que he explicado el algoritmo, veamos el código fuente. He colocado todo el funcionamiento en una función para que el código en Python sea reutilizable. Queda así:
def decimal_a_octal(decimal):
octal = ""
while decimal > 0:
residuo = decimal % 8
octal = str(residuo) + octal
decimal = int(decimal / 8)
return octal
Fíjate en la línea 6, en este caso debemos convertir a entero el resultado de la división para descartar el residuo, ya que el residuo lo calculamos anteriormente con %
.
Te mostraré un ejemplo de uso. En este caso le solicito al usuario un número decimal a través de input, y después lo envío a la función. Toma en cuenta que el número decimal debe ser entero, por lo que puedes usar int
para convertirlo.
"""
https://parzibyte.me/blog
"""
def decimal_a_octal(decimal):
octal = ""
while decimal > 0:
residuo = decimal % 8
octal = str(residuo) + octal
decimal = int(decimal / 8)
return octal
decimal = int(input("Ingresa un número decimal: "))
octal = decimal_a_octal(decimal)
print(f"El decimal {decimal} es {octal} en octal")
Al ejecutarlo los resultados son correctos:
He usado mi conversor de bases con JS para hacer la comprobación. Si haces clic aquí podrás ver más tutoriales de Python.
Ya te enseñé cómo convertir una aplicación web de Vue 3 en una PWA. Al…
En este artículo voy a documentar la arquitectura que yo utilizo al trabajar con WebAssembly…
En un artículo anterior te enseñé a crear un PWA. Al final, cualquier aplicación que…
Al usar Comlink para trabajar con los workers usando JavaScript me han aparecido algunos errores…
En este artículo te voy a enseñar cómo usar un "top level await" esperando a…
Ayer estaba editando unos archivos que son servidos con el servidor Apache y al visitarlos…
Esta web usa cookies.