#include <stdio.h> #include <stdint.h> uint32_t extract_even_bits(uint32_t reg) { // Your code here uint16_t arr[16], reg1=0x00; // for(uint8_t i=0; i<16; i++){ // arr[i] = ((reg>>(2*i))&1); // } // for(uint8_t i=0; i<16; i++){ // if(arr[i]==1){ // reg1 |= (1<<i); // } // } for(uint8_t i=0; i<16; i++){ reg1 |= (((reg>>(2*i))&1)<<i); } return reg1; } int main() { uint32_t reg; scanf("%u", ®); printf("%u", extract_even_bits(reg)); return 0; }
Test Cases
Test Results
Input
85
Expected Output
15