Programa que converte um número de decimal para binário em C++
Conversão de decimal para binário em C++
Fala pessoal! Neste tutorial vamos criar um pequeno programa que permite realizar a conversão de um número decimal, fornecido pelo usuário, em seu equivalente binário, usando a linguagem C++.
Usaremos o método das divisões sucessivas por 2, com o emprego da operação aritmética de módulo (resto da divisão inteira) para realizar essa conversão de bases numéricas.
Vamos ao código.
Código: Converter decimal em binário em C++
#include<iostream>
using namespace std;
int main()
{
int num, soma[100], i=0;
// Solicita ao usuário que o número decimal a ser convertido
cout<< "CONVERSÃO DE UM NÚMERO DECIMAL EM BINÁRIO \n";
cout<<"Digite o número a converter e pressione ENTER: \n";
cin>>num;
// Exibe o número decimal que será convertido
cout<<"Número a converter: ";
cout<<num;
// O loop a seguir realiza a conversão do número decimal em binário
while (num > 0) {
soma[i] = num % 2; // Calcula o resto da divisão por 2 (que é 0 ou 1)
i = i + 1; // Incrementa o índice para armazenar o próximo dígito binário
num = num / 2; // Divide o número decimal por 2 para continuar a conversão
}
// Exibe o número binário convertido
cout<<"\nNúmero convertido em binário: ";
for(int j=i-1;j>=0;j--)
{
cout<<soma[j]; // Mostra os dígitos binários na ordem correta
}
return 0;
}
Teste
CONVERSÃO DE UM NÚMERO DECIMAL EM BINÁRIO Digite o número a converter e pressione ENTER: 1650 Número a converter: 1650 Número convertido em binário: 11001110010
Funcionamento do Código
- O programa inicia com a inclusão da biblioteca iostream para permitir entrada e saída no console (cin e cout), usando o namespace std para evitar a necessidade de usar std:: antes das funções cin e cout.
- Na sequência declaramos algumas variáveis, incluindo num para armazenar o número decimal inserido pelo usuário, um vetor (array) soma para armazenar os dígitos binários e i para controlar o índice de soma.
- O programa então solicita que o usuário insira o número decimal que deseja converter.
- O programa entra em um laço while que continuará iterando até que o número decimal (num) seja maior que zero.
- Dentro desse laço, é calculado o resto da divisão (módulo) do número decimal por 2 usando num % 2. Isso resulta em 0 ou 1, que é o dígito binário correspondente ao dígito menos significativo do número decimal.
- O dígito binário calculado é armazenado no array soma[i], onde i é o índice atual do array. O índice é então incrementado para armazenar o próximo dígito binário.
- O número decimal (num) é dividido por 2 (num = num / 2) para continuar a conversão, removendo o dígito menos significativo.
- Após a conclusão do loop, o programa exibe o número binário resultante. Ele faz isso percorrendo o array soma na ordem reversa (do dígito mais significativo para o menos significativo) e exibindo cada dígito binário.
- O programa finalmente retorna 0, indicando que a execução foi bem-sucedida.
É isso aí! No próximo artigo faremos o processo inverso: faremos a conversão de um valor binário fornecido pelo usuário em sua representação decimal com C++.
Até!





Escreva um comentário