Este es un programa en c en el que vamos a realizar una funcion en c para convertir decimal a binario
no tengáis en cuenta los ceros a la izquierda del resultado, veamos el programa en c y con el resultado de la compilación.
como convertir un numero decimal a binario
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
/*
NB:
NUMERO_DE_BITS nunca debe ser mayor que 63 excepto si ya hay procesadores de 128 bits ;)
*/
#define NUMERO_DE_BITS 8
int main(int argc, char const *argv[])
{
unsigned long long int decimal =0; // Aquí guarda el número decimal que el usuario ingresa
char binario[NUMERO_DE_BITS]; // Una cadena representando el número binario
/*
Llenar la cadena con ceros
*/
for (int i = 0; i < NUMERO_DE_BITS; ++i) binario[i] = '0';
/*
Calcular el máximo número que puede ingresar el usuario
*/
unsigned long long int maximo = pow(2, NUMERO_DE_BITS);
printf("Ingresa el numero decimal [maximo %llu]: \n", maximo - 1);
scanf("%llu", &decimal);
lldiv_t resultadoDeLaDivision;
int contador = NUMERO_DE_BITS;
while(decimal > 0){
resultadoDeLaDivision = lldiv(decimal, 2);
contador--;
binario[contador] = resultadoDeLaDivision.rem == 1 ? '1' : '0';
decimal = resultadoDeLaDivision.quot;
}
printf("El numero en binario es: %s\n", binario);
return 0;
}
0 Comments:
Publicar un comentario