Decimal, Hexa, Char para Binário
Script para converter um
decimal, hexadecimal ou
caractere para seu valor
binário.
decimal, hexadecimal ou
caractere para seu valor
binário.
Descrição
Script para converter um
decimal, hexadecimal ou
caractere para seu valor
binário.
decimal, hexadecimal ou
caractere para seu valor
binário.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int numBin(int);
int menu(void);
int decBin(void);
int hexBin(void);
int charBin(void);
int numBin(int numero){
int i;
int result=numero;
int bin[8];
for(i=0;i<8;i++)
bin[i]=0;
for(i=0;result!=0;i++){
bin[i]=result%2;
result=(result - bin[i])/2;
}
printf("Binario: ");
for(i=7;i>=0;i--)
printf("%d", bin[i]);
}
int menu(void){
char opcao[10];
int op;
system("clear");
printf("\n");
printf("\t1. Decimal para Binario\n");
printf("\t2. Hexadecimal para Binario\n");
printf("\t3. Caractere para Binario\n");
printf("\t4. Sair\n\n");
do{
inicio:
printf("\tDigite sua opcao: ");
gets(opcao);
op = atoi(opcao);
switch(op){
case 1:
decBin();
break;
case 2:
hexBin();
break;
case 3:
charBin();
break;
case 4:
exit(0);
default:
printf("Opcao Invalida\n");
goto inicio;
}
}while(1);
}
int decBin(void){
int num;
char espera;
system("clear");
printf("Digite o numero: ");
scanf("%d", &num);
numBin(num);
__fpurge(stdin);
espera = getchar();
if(espera) menu();
}
int hexBin(void){
int num;
char espera;
system("clear");
printf("Digite o numero: ");
scanf("%x", &num);
numBin(num);
__fpurge(stdin);
espera = getchar();
if(espera) menu();
}
int charBin(void){
int num;
char espera;
system("clear");
printf("Digite o numero: ");
scanf("%c", &num);
numBin(num);
__fpurge(stdin);
espera = getchar();
if(espera) menu();
}
int main(){
menu();
return 0;
}