#include <stdio.h>
unsigned char modifyBit(unsigned char reg, int pos, int mode) {
int sam_reg = reg;
int binary[32];
int i = 0;
int k;
while(sam_reg>0){
binary[i] = sam_reg % 2;
sam_reg = sam_reg/2;
i++;
}
if( mode == true){
binary[(pos-i)-1] = 1;
}
else{
binary[(pos-i)-1] = 0;
}
int value= 0;
for(k = i-1;k<0,k--){
if(k=true){
value += 2;
}
}
printf("%d", value);
}
int main() {
unsigned char reg;
int pos, mode;
scanf("%hhu %d %d", ®, &pos, &mode);
printf("%d", modifyBit(reg, pos, mode));
return 0;
}
Input
10 3 1
Expected Output
10