Codigo en C, cambie de nro. natural a binario

Resuelto/Cerrado
perfot Mensajes enviados 44 Fecha de inscripción viernes, 4 de abril de 2008 Estatus Contribuidor Última intervención viernes, 31 de octubre de 2008 - 31 oct 2008 a las 13:44
 farreell - 15 may 2016 a las 06:03
Hola,

Me gustaria saber el codigo en C para crear un programa que cambie un numero natural entero a binario. Si alguien lo sabe me harian un gran favor!

2 respuestas

Keron Mensajes enviados 13 Fecha de inscripción viernes, 31 de octubre de 2008 Estatus Miembro Última intervención viernes, 31 de octubre de 2008 171
31 oct 2008 a las 17:31
Aqui te pongo el código de la funcion que buscas.



#include <stdio.h>

void dec2bin(long decimal, char *binary);

int main()
{
long decimal;
char binary[80];

printf("\n\n Ingrese el numero a convertir : ");
scanf("%ld",&decimal);
dec2bin(decimal,binary);
printf("\n El numero Binario es: %ld is %s \n",decimal,binary);

getchar(); // trap enter
getchar(); // wait
return 0;
}

void dec2bin(long decimal, char *binary)
{
int k = 0, n = 0;
int neg_flag = 0;
int remain;
int old_decimal;
char temp[80];


if (decimal < 0)
{
decimal = -decimal;
neg_flag = 1;
}
do
{
old_decimal = decimal;
remain = decimal % 2;
decimal = decimal / 2;

printf("%d/2 = %d remainder = %d\n", old_decimal, decimal, remain);
temp[k++] = remain + '0';
} while (decimal > 0);

if (neg_flag)
temp[k++] = '-';
else
temp[k++] = ' ';

while (k >= 0)
binary[n++] = temp[--k];

binary[n-1] = 0;
}
25
ustedes son unos verdaderos genios
0
al fin lo encontre...
GRACIAS
0