All submissions

Set or Clear a Specific Bit in a Register

Code

#include <stdio.h>
int setOrclear(unsigned char reg, int pos, int mode);

int main() {
    unsigned char reg;
    int pos, mode;
    scanf("%hhu %d %d", &reg, &pos, &mode);
    printf("%d", setOrclear(reg, pos, mode));
    return 0;
}
int setOrclear(unsigned char reg,int pos,int mode)
{
  if(mode==1)
  {
     reg |= (1<<pos);
  }
  else
  {
    reg &= ~(1<<pos);
  }
  return reg; 

}

Solving Approach

  1. Problem Understanding
  2. Subtasks
  3. Data types
  4. Algorithm (pseudocode)
  5. Code
  6. Dry run

 

 

Loading...

Input

10 3 1

Expected Output

10