# How to turn off a particular bit in a number?

Difficulty Level: Rookie

Given a number n and a value k, turn of the k’th bit in n.

Examples:

```Input:  n = 15, k = 1
Output: 14

Input:  n = 15, k = 2
Output: 13

Input:  n = 15, k = 3
Output: 11

Input:  n = 15, k = 4
Output: 7

Input:  n = 15, k >= 5
Output: 15 ```

The idea is to use bitwise <<, & and ~ operators. Using expression "~(1 << (k – 1))“, we get a number which has all bits set, except the k’th bit. If we do bitwise & of this expression with n, we get a number which has all bits same as n except the k’th bit which is 0.

Below is the implementation of above idea.

## C++

 `#include ` `using` `namespace` `std; ` ` `  `// Returns a number that has all bits same as n ` `// except the k'th bit which is made 0 ` `int` `turnOffK(``int` `n, ``int` `k) ` `{ ` `    ``// k must be greater than 0 ` `    ``if` `(k <= 0) ``return` `n; ` ` `  `    ``// Do & of n with a number with all set bits except ` `    ``// the k'th bit ` `    ``return` `(n & ~(1 << (k - 1))); ` `} ` ` `  `// Driver program to test above function ` `int` `main() ` `{ ` `    ``int` `n = 15; ` `    ``int` `k = 4; ` `    ``cout << turnOffK(n, k); ` `    ``return` `0; ` `}`

/div>

## Java

 `// Java program to turn off a particular bit in a number ` `import` `java.io.*; ` ` `  `class` `TurnOff  ` `{ ` `    ``// Function to returns a number that has all bits same as n ` `    ``// except the k'th bit which is made 0 ` `    ``static` `int` `turnOffK(``int` `n, ``int` `k) ` `    ``{ ` `        ``// k must be greater than 0 ` `        ``if` `(k <= ``0``)  ` `            ``return` `n; ` `  `  `        ``// Do & of n with a number with all set bits except ` `        ``// the k'th bit ` `        ``return` `(n & ~(``1` `<< (k - ``1``))); ` `    ``} ` `     `  `    ``// Driver program ` `    ``public` `static` `void` `main (String[] args)  ` `    ``{ ` `        ``int` `n = ``15``; ` `        ``int` `k = ``4``; ` `        ``System.out.println(turnOffK(n, k)); ` `    ``} ` `} ` `// Contributed by Pramod Kumar `

## Python3

 `# Returns a number that ` `# has all bits same as n ` `# except the k'th bit ` `# which is made 0 ` ` `  `def` `turnOffK(n,k): ` ` `  `    ``# k must be greater than 0 ` `    ``if` `(k <``=` `0``):  ` `        ``return` `n ` `  `  `    ``# Do & of n with a number ` `    ``# with all set bits except ` `    ``# the k'th bit ` `    ``return` `(n & ~(``1` `<< (k ``-` `1``))) ` ` `  `  `  `# Driver code ` `n ``=` `15` `k ``=` `4` `print``(turnOffK(n, k)) ` ` `  `# This code is contributed ` `# by Anant Agarwal. `

## C#

 `// C# program to turn off a  ` `// particular bit in a number ` `using` `System; ` ` `  `class` `GFG ` `{ ` `     `  `    ``// Function to returns a number  ` `    ``// that has all bits same as n ` `    ``// except the k'th bit which is  ` `    ``// made 0 ` `    ``static` `int` `turnOffK(``int` `n, ``int` `k) ` `    ``{ ` `        ``// k must be greater than 0 ` `        ``if` `(k <= 0)  ` `            ``return` `n; ` ` `  `        ``// Do & of n with a number  ` `        ``// with all set bits except ` `        ``// the k'th bit ` `        ``return` `(n & ~ (1 << (k - 1))); ` `    ``} ` `     `  `    ``// Driver Code ` `    ``public` `static` `void` `Main ()  ` `    ``{ ` `        ``int` `n = 15; ` `        ``int` `k = 4; ` `        ``Console.Write(turnOffK(n, k)); ` `    ``} ` `} ` ` `  `// This code is contributed by Nitin Mittal. `

## PHP

 ` `

Output:

`7`

Exercise: Write a function turnOnK() that turns the k’th bit on.