Buen día amigos, el día de hoy te voy a enseñar paso a paso como crear un programa que te ayude a cambiar de números decimales a enteros en C.
Lo primero que tenemos que hacer es determinar la lógica, para ello lo primero que debe quedar muy claro es que yo voy a hacer un byte, lo que significa que el máximo de números es 255.
Entonces, el programa va a tener un numero máximo de 255 y esto es porque nuestro numero máximo en binario va a ser el 11111111, que es igual a 255.
Con esto en mente, las variables que necesitaremos serán un array que acepte a un máximo de 8 números y un numero que erigirá el usuario para convertir a binario.
int num, binaryNumbers[8];
Además de esto, necesitaremos establecer nuestra lógica, que será la siguiente:
- Primero tendremos que asegurarnos que el numero ingresado por el usuario no sea mayor a 255
- Después tendremos que dividir el numero que el usuario ingreso entre dos y el restante será el bit que ingresaremos, este será 0 o 1.
- Hay que hacer un for empezando desde el ultimo numero de nuestro array para que el numero en binario sea el correcto
- Al final, hay que hacer un for para imprimir el numero binario o el resultado final
Al final, el código ha quedado de la siguiente forma:
int main(){
int num, binaryNumbers[8];
printf("Vamos a transformar un numero decimal a binario \n");
printf("Ingresa un numero del 0 al 255 ");
scanf("%d", &num);
if(num > 255){
printf("Numero no valido \n");
} else{
for(int i = 7; i >= 0; i--){
binaryNumbers[i] = num%2;
num = num / 2;
}
}
for(int j = 0; j < 8; j++){
printf("%d ", binaryNumbers[j]);
}
printf("\n");
return 0;
}
Curso Práctico de Estructuras de Datos y Algoritmos