Neste exemplo, você aprenderá a converter o número binário em decimal e o número decimal em binário manualmente, criando funções definidas pelo usuário.
Para entender este exemplo, você deve ter conhecimento dos seguintes tópicos de programação C ++:
- Funções C ++
- Tipos de funções definidas pelo usuário em C ++
- C ++ Recursion
- C ++ if, if … else e aninhado if … else
- C ++ while e do … while Loop
Visite esta página para aprender como converter números binários em decimais.
Exemplo 1: Programa C ++ para converter número binário em decimal
#include #include using namespace std; int convertBinaryToDecimal(long long); int main() ( long long n; cout <> n; cout << n << " in binary = " << convertBinaryToDecimal(n) << "in decimal"; return 0; ) int convertBinaryToDecimal(long long n) ( int decimalNumber = 0, i = 0, remainder; while (n!=0) ( remainder = n%10; n /= 10; decimalNumber += remainder*pow(2,i); ++i; ) return decimalNumber; )
Resultado
Insira um número binário: 1111 1111 em binário = 15
Visite esta página para aprender como converter números decimais em binários.
Exemplo 2: Programa C ++ para converter número decimal em binário
#include #include using namespace std; long long convertDecimalToBinary(int); int main() ( int n, binaryNumber; cout <> n; binaryNumber = convertDecimalToBinary(n); cout << n << " in decimal = " << binaryNumber << " in binary" << endl ; return 0; ) long long convertDecimalToBinary(int n) ( long long binaryNumber = 0; int remainder, i = 1, step = 1; while (n!=0) ( remainder = n%2; cout << "Step " << step++ << ": " << n << "/2, Remainder = " << remainder << ", Quotient = " << n/2 << endl; n /= 2; binaryNumber += remainder*i; i *= 10; ) return binaryNumber; )
Resultado
Insira um número decimal: 19 Etapa 1: 19/2, Remanescente = 1, Quociente = 9 Etapa 2: 9/2, Remanescente = 1, Quociente = 4 Etapa 3: 4/2, Remanescente = 0, Quociente = 2 Etapa 4 : 2/2, Remanescente = 0, Quociente = 1 Etapa 5: 1/2, Remanescente = 1, Quociente = 0 19 em decimal = 10011 em binário