Code

#include <stdio.h>

int toggleFifthBit(int n) {
    // mask bit [5] 

    // 101010
    // mask around 5
    // 100000
    // ~
    // 011111
    // &

    // 010101
    // mask around [5]
    // 000000
    // ~
    // 111111
    // 100000
    // | 

    int mask = (0x1 << 5);
    int temp = mask & n;
    if (temp == 0) {
        return n | mask;
    }
    else {
        return n & ~mask;
    }
}

int main() {
    int n;
    scanf("%d", &n);
    printf("%d", toggleFifthBit(n));
    return 0;
}

Solving Approach

 

 

 

Upvote
Downvote
Loading...

Input

8

Expected Output

40