Convertidor entre bases numericas - YezaelOtamendi/Programamcion-en-C GitHub Wiki
#include <stdio.h>
int main (void){
int a, d, i, j, A = 0;
char x[100];
char h[16]={'1', '2', '3', '4','5','6','7','8','9','A','B','C','D','E','F'};
printf("Convesion de: \n1.Dec-Bin \n2.Dec-Oct \n3.Dec-Hex\n");
scanf("%d",&d);
printf("Inserte la cantidad a conversionar: ");
scanf("%d",&a);
A=a;
switch(d){
case 1:
while (a > 0){
x[i] = a%2;
a /= 2;
i++;
}
printf("El resultado de la conversion de %d a binario es de: ",A);
for (j=i-1; j>=0; j--){
printf("%d",x[j]);
}
break;
case 2:
while (a > 0){
x[i] = a%8;
a /= 8;
i++;
}
printf("El resultado de la conversion de %d a octal es de: ",A);
for (j=i-1; j>=0; j--){
printf("%d",x[j]);
}
break;
case 3:
while (a > 0){
x[i] = a%16;
a /= 16;
i++;
}
for (j=i-1; j>=0; j--){
if (x[j]==10){
printf("%d",x[j]);
x[j]=h[10];
}
else if (x[j]==11){
printf("%d",x[j]);
x[j]=h[11];
}
else if (x[j]==12){
printf("%d",x[j]);
x[j]=h[12];
}
else if (x[j]==13){
printf("%d",x[j]);
x[j]=h[13];
}
else if (x[j]==14){
printf("%d",x[j]);
x[j]=h[14];
}
else if (x[j]==15){
printf("%d",x[j]);
x[j]=h[15];
}
}
printf("El resultado de la conversion de %d a hexadecimal es de: ",A);
for (j=i-1; j>=0; j--){
printf("%d",x[j]);
}
break;
}
}