#include <stdio.h>
// Gray code is a binary numeral system where two successive values differ by only one bit.
// Function to print an 8-bit binary representation of an integer
void printBinary(int num) {
for (int i = 7; i >= 0; i--) {
putchar((num & (1 << i)) ? '1' : '0');
}
}
int main() {
int decimal = 2; // The decimal number
int grayCode = decimal ^ (decimal >> 1); // Calculate Gray code
printf("Decimal: %d → Binary: ", decimal);
printBinary(decimal);
printf("\n");
printf("Gray code: %d → Binary: ", grayCode);
printBinary(grayCode);
printf("\n");
return 0;
}
/*
run:
Decimal: 2 → Binary: 00000010
Gray code: 3 → Binary: 00000011
*/