Otro código de formato %o en C
– Prog035
/* Prog035.cpp */
/* Programa que convierte un número decimal entero a octal */
#include<stdio.h>
#include<conio.h> /* Porque utilizo: getch() */
void main()
{
int numero;
printf («Numero entero en decimal: «); scanf(«%d», &numero);
printf («nnSu representacion en octal es %o»);
/* Observa que no es necesario escribir el nombre de la variable. Toma nota del código de formato de un número en octal: %o */
printf («nPresione cualquier tecla para terminar…n»); getch();
}
Un número entero en decimal quiere decir en base 10, un número en octalquiere decir en base 8
Si tubiéramos de pasar un número en base 10 a base 8 “a mano”, deberíamos hacer lo siguiente, por ejemplo con el número 85:
85: 8 = 10, resto=5 10:8 = 1, resto = 2
Iríamos dividiendo el número y sus cocientes sucesivos por 8, hasta que no pudiéramos más.
El número correspondiente en base 8, serían los diferentes restos y el último cociente, escritos al revés, en nuestro ejemplo: 85 en base 10 = 125 en base 8. Como puedes comprobar si ejecutas el Prog035.cpp y ante la pregunta“Número entero en decimal:” escribes 85.
Fuente: Programación en C/C++ (Manual FV) de Fermí Vilà