Podemos converter qualquer número decimal (base 10 (0 a 9)) em número binário (base 2 (0 ou 1)) em C++.
Número Decimal
Um número decimal é um número de base 10 porque varia de 0 a 9, há um total de 10 dígitos entre 0 e 9.
Qualquer combinação de dígitos é um número decimal, como 223, 585, 192, 0, 7 etc.
Número Binário
Um número binário é um número de base 2 porque é 0 ou 1. Qualquer combinação de 0 e 1 é um número binário, como 1001, 101, 11111, 101010 etc.
Veja na Tabela 8.1 alguns números decimais e seus correspondentes em binários:
Tabela 8.1
Vejamos como funciona o algoritmo de conversão decimal para binário:
Etapa 1: Divida o número por 2 a% (operador de módulo) e armazene o restante na matriz.
Etapa 2: Divida o número por 2 a / (operador de divisão).
Etapa 3: Repita a etapa 2 até que o número seja maior que zero.
Agora vejamos um exemplo prático para converter um número decimal em binário:
1. #include <iostream>
2. using namespace std;
3. int main ()
4. {
5. int a [10], n, i;
6. cout << "Digite o número a ser convertido: ";
7. cin >> n;
8. for (i = 0; n> 0; i ++)
9. {
10. a [i] = n% 2;
11. n = n / 2;
12. }
13. cout << "Binário do número fornecido: ";
14. for (i = i-1; i>= 0; i--)
15. {
16. cout << a [i];
17. }
18. }
Resultado:
Digite o número a ser convertido: 9.
Binário do número fornecido: 1001.
|