Decimal, Hexa, Char para Binário

Publicado por Enzo de Brito Ferber 09/01/2006

[ Hits: 18.393 ]

Homepage: http://www.maximasonorizacao.com.br

Download numBin.c




Script para converter um
decimal, hexadecimal ou
caractere para seu valor
binário.

  



Esconder código-fonte

#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;
}

    
                                

Scripts recomendados

Operadores Lógicos

Fila dinâmica em C

Comando switch

ArkaPoing (arkanoid+pingpoing hehe)

A - Comando strdup


  

Comentários
[1] Comentário enviado por Erick20xx em 05/03/2009 - 09:02h

Legal cara, isso é interessante :)


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts