#include <stdio.h> #include <stdint.h> uint32_t extract_even_bits(uint32_t reg) { uint32_t mask = 0x5555; uint32_t even_bits = 0x0000; uint32_t extract = reg & mask; int j=0; for(int i=0;i<32;i+=2) { uint32_t temp = (reg>>i) & (1u); even_bits |= (temp << j); j++; } return even_bits; } int main() { uint32_t reg; scanf("%u", ®); printf("%u", extract_even_bits(reg)); return 0; }
Test Cases
Test Results
Input
85
Expected Output
15