Ir para conteúdo
Fórum Script Brasil
  • 0

CONVERSOR DE BINÁRIO PARA DECIMAL


roccoC/C++

Pergunta

Se você ta precisando de um Conversor de Binário para decimal,porque não testar este?

Este código esta baseado em outro,mais nem sei onde achei o original que não tenho mais.

na verdade o que é bom pode melhorar, e se você melhorar este projeto post aqui para nossa apreciação.

http://codigosfontes-ccplus-plus.blogspot....ra-decimal.html

Editado por roccoC/C++
Adicionar tags code [Durub]
Link para o comentário
Compartilhar em outros sites

9 respostass a esta questão

Posts Recomendados

  • 0

Para efeitos didáticos.

Abs


#include <stdio.h>
#include <dos.h>
#include <stdlib.h>
void main(void)
{
union
{
unsigned char byte;
struct
{
unsigned char bit0 : 1;
unsigned char bit1 : 1;
unsigned char bit2 : 1;
unsigned char bit3 : 1;
unsigned char bit4 : 1;
unsigned char bit5 : 1;
unsigned char bit6 : 1;
unsigned char bit7 : 1;
} unsigned binario;
} dado;

dado.byte = 127;
printf("Decimal: %d\n", dado.byte);
printf("Binario: %d%d%d%d-%d%d%d%d\n", dado.binario.bit7, dado.binario.bit6, dado.binario.bit5, dado.binario.bit4,
dado.binario.bit3, dado.binario.bit2, dado.binario.bit1, dado.binario.bit0);
printf("Hexa...: %02X\n", dado.byte);

printf("\n\n");

dado.binario.bit7 = 1;
dado.binario.bit6 = 0;
dado.binario.bit5 = 1;
dado.binario.bit4 = 0;
dado.binario.bit3 = 1;
dado.binario.bit2 = 0;
dado.binario.bit1 = 1;
dado.binario.bit0 = 0;

printf("Binario: %d%d%d%d-%d%d%d%d\n", dado.binario.bit7, dado.binario.bit6, dado.binario.bit5, dado.binario.bit4,
dado.binario.bit3, dado.binario.bit2, dado.binario.bit1, dado.binario.bit0);
printf("Decimal: %d\n", dado.byte);
printf("Hexa...: %02X\n", dado.byte);



system("pause");
}
[/codebox]

Link para o comentário
Compartilhar em outros sites

  • 0

Olá.

Esse codigo deve funcionar em qualquer compilador, basta algumas mudanças (de coisas que não deveriam estar ai)

Obrigado e parabens pela iniciativa de compartilhar codigo.

Abs

#include <stdio.h>
// #include <dos.h>         // essa linha esta a mais
#include <stdlib.h>
void main(void)
{
union
{
unsigned char byte;
struct
{
unsigned char bit0 : 1;
unsigned char bit1 : 1;
unsigned char bit2 : 1;
unsigned char bit3 : 1;
unsigned char bit4 : 1;
unsigned char bit5 : 1;
unsigned char bit6 : 1;
unsigned char bit7 : 1;
} unsigned binario;    // retirar o unsigned dessa linha e pronto, compila em Windows ou Linux
} dado;

dado.byte = 127;
printf("Decimal: %d\n", dado.byte);
printf("Binario: %d%d%d%d-%d%d%d%d\n", dado.binario.bit7, dado.binario.bit6, dado.binario.bit5, dado.binario.bit4,
dado.binario.bit3, dado.binario.bit2, dado.binario.bit1, dado.binario.bit0);
printf("Hexa...: %02X\n", dado.byte);

printf("\n\n");

dado.binario.bit7 = 1;
dado.binario.bit6 = 0;
dado.binario.bit5 = 1;
dado.binario.bit4 = 0;
dado.binario.bit3 = 1;
dado.binario.bit2 = 0;
dado.binario.bit1 = 1;
dado.binario.bit0 = 0;

printf("Binario: %d%d%d%d-%d%d%d%d\n", dado.binario.bit7, dado.binario.bit6, dado.binario.bit5, dado.binario.bit4,
dado.binario.bit3, dado.binario.bit2, dado.binario.bit1, dado.binario.bit0);
printf("Decimal: %d\n", dado.byte);
printf("Hexa...: %02X\n", dado.byte);

system("pause");
}

Link para o comentário
Compartilhar em outros sites

  • 0

é você tinha razão cara fiz o que você falou, tirei o ( "unsigned" binario; // retirar o unsigned dessa linha e pronto, compila em Windows ou Linux),

e mudei de (void main(void), para int main(void) e compilei no Code Blocks e funcionou perfeitamente.

Agora, porque será que compila no Borlan sem alterações? isto não entendo. abrçs..

Link para o comentário
Compartilhar em outros sites

  • 0

Galera, não compliquemos o que é fácil...

#include <stdio.h>
#include <stdlib.h>

void dec2Bin(unsigned long int num){
    if(num){
        dec2Bin(num/2);
        printf("%d ", num%2);
    }
}


int main(){
    unsigned long int num;

    scanf("%lu", &num);
    dec2Bin(num);
    
    return(0);
}

Um pouco de recursividade pode tornar o algoritmo mais fácil de entender, se usada corretamente.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...