Convert Binary to Hexadecimal program in C++
#include <iostream>
using namespace std;
int main() {
char binaryNumber[1000], hexadecimalNumber[1000];
int temp;
long int binaryIndex = 0, hexadecimalIndex = 0;
cout << "Enter Binary Number: ";
cin >> binaryNumber;
while (binaryNumber[binaryIndex]) {
binaryNumber[binaryIndex] = binaryNumber[binaryIndex] - 48;
++binaryIndex;
}
--binaryIndex;
while (binaryIndex - 2 >= 0) {
temp = binaryNumber[binaryIndex - 3] * 8 + binaryNumber[binaryIndex - 2] * 4 + binaryNumber[binaryIndex - 1] * 2 + binaryNumber[binaryIndex];
if (temp > 9) {
hexadecimalNumber[hexadecimalIndex++] = temp + 55;
} else {
hexadecimalNumber[hexadecimalIndex++] = temp + 48;
}
binaryIndex = binaryIndex - 4;
}
if (binaryIndex == 1) {
hexadecimalNumber[hexadecimalIndex] = binaryNumber[binaryIndex - 1] * 2 + binaryNumber[binaryIndex] + 48;
} else if (binaryIndex == 0) {
hexadecimalNumber[hexadecimalIndex] = binaryNumber[binaryIndex] + 48;
} else {
--hexadecimalIndex;
}
cout << "\nHexadecimal Number equivalent to Binary Number: ";
while (hexadecimalIndex >= 0) {
cout << hexadecimalNumber[hexadecimalIndex--]
}
return 0;
}
Output
Enter Binary Number: 1010101
Hexadecimal Number equivalent to Binary Number: 155
