#include <stdio.h> #include <stdint.h> uint8_t reverse_bits(uint8_t val) { // Your logic here if (val == 0) return 0; uint8_t mask = 0x00; uint8_t result = 0x00; //uint8_t shift = 0x80; for(uint8_t x=0; x < 8; x++) { //shift to left then compare for mas result mask = (1 & (val >> x)); result |= (mask << 7 - x); } return result; } int main() { uint8_t val; scanf("%hhu", &val); uint8_t result = reverse_bits(val); printf("%u", result); return 0; }
Test Cases
Test Results
Input
26
Expected Output
88