#include <stdio.h> unsigned char extractNibble(unsigned char reg, int pos) { // Write your code here if(pos==1){ reg=(reg>>4)&0x0F; } else{ reg=(reg&0x0F); } return reg; } int main() { unsigned char reg; int pos; scanf("%hhu %d", ®, &pos); printf("%d", extractNibble(reg, pos)); return 0; }
You only want that nibble so you make others 0 by using 0x0F as per the requirement that value changes.
Test Cases
Test Results
Input
170 0
Expected Output
10