| Você está aqui: C ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição | 
| Como converter de binário para decimal em C usando o laço for - Desafio de Programação Resolvido em CQuantidade de visualizações: 521 vezes | 
| Pergunta/Tarefa: Escreva um programa C que usa o laço for para converter um número binário (como uma String) em sua representação decimal (como um int). Peça ao usuário para informar um número binário e mostre o mesmo em decimal (como um int). Sua solução deve obrigatoriamente usar o laço for. Sua saída deverá ser parecida com: Informe um número binário: 1100 A representação decimal do valor binário 1100 é 12 Veja a resolução comentada deste exercício usando C: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
// função principal do programa
int main(int argc, char *argv[]){
  // variáveis usadas na resolução do problema
  char binario[80], char_temp[2];
  int decimal, i, expoente, temp;
	
  // vamos ler o número binário (como uma String)
  printf("Informe um número binário: ");
  gets(binario);
	
  // guarda a representação decimal
  decimal = 0; 
     
  // inicializa o expoente
  expoente = strlen(binario) - 1;   
     
  // vamos percorrer todos os dígitos do número binário começando do início
  for(i = 0; i < strlen(binario); i++){
    // converte o caractere atual para inteiro
    char_temp[0] = binario[i];
    temp = atoi(char_temp);
    decimal = decimal + (temp * (int)pow(2, expoente));
    
    // reduz o expoente
    expoente = expoente - 1;
  }
  
  // mostramos o resultado
  printf("O valor decimal é: %d", decimal); 
  
  printf("\n\n");
  system("PAUSE");
  return 0;
}
 | 
|  Link para compartilhar na Internet ou com seus amigos: | 
| Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de C | 
| Veja mais Dicas e truques de C | 
| Dicas e truques de outras linguagens | 
| AutoCAD Civil 3D .NET C# - Como retornar a quantidade de estacas de um alinhamento do Civil 3D usando a função GetStationSet() da classe Alignment da AutoCAD Civil 3D .NET API JavaScript - Como obter entrada do usuário em seus códigos JavaScript usando a função prompt() do objeto window | 
| E-Books em PDF | ||||
| 
 | ||||
| 
 | ||||
| Linguagens Mais Populares | ||||
| 
			   1º lugar: Java | 


 
 





