# Program to clear K-th bit of a number N

• Difficulty Level : Medium
• Last Updated : 08 Nov, 2021

Given a number N, the task is to clear the K-th bit of this number N. If K-th bit is 1, then clear it to 0 and if it is 0 then leave it unchanged.
Examples:

```Input: N = 5, K = 1
Output: 4
5 is represented as 101 in binary
and has its first bit 1, so clearing
it will result in 100 i.e. 4.

Input: N = 5, K = 2
Output: 5
5 is represented as 101 in binary
and has its second bit is already 0,
so clearing it will result in 101 i.e. 5.```

Approach:

• Since bitwise AND of any bit with a reset bit results in a reset bit, i.e.
```Any bit <bitwise AND> Reset bit = Reset bit

which means,
0 & 0 = 0
1 & 0 = 0```
• So for clearing a bit, performing a bitwise AND of the number with a reset bit is the best idea.
```n = n & ~(1 << k)
OR
n &= ~(1 << k)

where k is the bit that is to be cleared```

Below is the implementation of the above approach:

## C

 `// C program to clear K-th bit of a number N` `#include ` `// Function to clear the kth bit of n``int` `clearBit(``int` `n, ``int` `k)``{``    ``return` `(n & (~(1 << (k - 1))));``}` `// Driver code``int` `main()``{``    ``int` `n = 5, k = 1;` `    ``printf``(``"%d\n"``, clearBit(n, k));` `    ``return` `0;``}`

## C++

 `// C++ program to clear K-th bit of a number N` `#include ``using` `namespace` `std;` `// Function to clear the kth bit of n``int` `clearBit(``int` `n, ``int` `k)``{``    ``return` `(n & (~(1 << (k - 1))));``}` `// Driver code``int` `main()``{``    ``int` `n = 5, k = 1;` `    ``cout<

## Python3

 `# Python3 program to clear``# K-th bit of a number N` `# Function to clear the kth bit of n``def` `clearBit(n, k):``    ``return` `(n & ( ~(``1` `<< (k ``-` `1``))))` `# Driver code``n ``=` `5``k ``=` `1` `print``(clearBit(n, k))` `# This code is contributed``# by Mohit Kumar`

## Java

 `// Java program to clear K-th bit of a number N``class` `GFG``{``    ` `    ``// Function to clear the kth bit of n``    ``static` `int` `clearBit(``int` `n, ``int` `k)``    ``{``        ``return` `(n & (~(``1` `<< (k - ``1``))));``    ``}``    ` `    ``// Driver code``    ``public` `static` `void` `main (String[] args)``    ``{``        ``int` `n = ``5``, k = ``1``;``    ` `        ``System.out.println(clearBit(n, k));``    ``}``}` `// This code is contributed by AnkitRai01`

## C#

 `// C# program to clear K-th bit of a number N``using` `System;` `class` `GFG``{``    ` `    ``// Function to clear the kth bit of n``    ``static` `int` `clearBit(``int` `n, ``int` `k)``    ``{``        ``return` `(n & (~(1 << (k - 1))));``    ``}``    ` `    ``// Driver code``    ``public` `static` `void` `Main (String[] args)``    ``{``        ``int` `n = 5, k = 1;``    ` `        ``Console.WriteLine(clearBit(n, k));``    ``}``}` `// This code is contributed by PrinciRaj1992`

## Javascript

 ``

Output:

`4`

Time Complexity: O(1)

Auxiliary Space: O(1)

My Personal Notes arrow_drop_up