Related Articles

# Check if a number is divisible by 8 using bitwise operators

• Difficulty Level : Medium
• Last Updated : 05 Apr, 2021

Given a number n, check if it is divisible by 8 using bitwise operators.
Examples:

```Input : 16
Output :YES

Input :15
Output :NO```

Approach: Result = (((n >> 3) << 3) == n). First we shift the 3 bit right then we shift the 3 bit left and then compare the number with the given number if the number is equal to the number then it is the divisible by 8 .
Explanation:
Example: n = 16 given so binary of the 16 is 10000 now we shift the 3 bit right, now we have 00010 so again we shift the 3 bit left, then we have 10000 now compare with the given number first 16==16 in binary so it true so the number is divisible by 8.

## CPP

 `// C++ program to check whether``// the number is divisible by``// 8 or not using bitwise operator``#include ``using` `namespace` `std;` `// function to check number is``// div by 8 or not using bitwise``// operator``int` `Div_by_8(``int` `n)``{``    ``return` `(((n >> 3) << 3) == n);``}` `// Driver program``int` `main()``{``    ``int` `n = 16;``    ``if` `(Div_by_8(n))``        ``cout << ``"YES"` `<< endl;``    ``else``        ``cout << ``"NO"` `<< endl;``    ``return` `0;``}`

## Java

 `// Java program to check whether``// the number is divisible by``// 8 or not using bitwise operator``import` `java.io.*;``import` `java.util.*;` `class` `GFG``{``    ``// function to check number is``    ``// div by 8 or not using bitwise``    ``// operator``    ``static` `boolean` `Div_by_8(``int` `n)``    ``{``        ``return` `(((n >> ``3``) << ``3``) == n);``    ``}``    ` `    ``// Driver code``    ``public` `static` `void` `main (String[] args)``    ``{``        ``int` `n = ``16``;``        ``if` `(Div_by_8(n))``            ``System.out.println(``"YES"``);``        ``else``            ``System.out.println(``"NO"``);``        ` `    ``}``}` `// This code is contributed by  Gitanjali`

## Python3

 `# Python  program to check whether``# the number is divisible by``# 8 or not using bitwise operator` `import` `math` `# function to check number is``# div by 8 or not using bitwise``# operator` `def` `Div_by_8(n):` `    ``return` `(((n >> ``3``) << ``3``) ``=``=` `n)`  `#  driver code``n ``=` `16``if` `(Div_by_8(n)):``    ``print``(``"YES"``)``else``:``    ``print``(``"NO"``)` `# This code is contributed by Gitanjali.`

## C#

 `// C# program to check whether         ``// the number is divisible by         ``// 8 or not using bitwise operator         ``using` `System;         ``class` `GFG {         ``           ` ` ``// function to check number is         `` ``// div by 8 or not using bitwise         `` ``// operator         `` ``static` `bool` `Div_by_8(``int` `n)         `` ``{         `` ``return` `(((n >> 3) << 3) == n);         `` ``}         ``           ` ` ``// Driver code         `` ``public` `static` `void` `Main ()          `` ``{         `` ``int` `n = 16;         ``           ` ` ``if` `(Div_by_8(n))         `` ``Console.WriteLine(``"YES"``);         `` ``else`         ` ``Console.WriteLine(``"NO"``);         ``           ` ` ``}         ``}    ``     ` `// This code is contributed by vt_m.         `

## PHP

 `> 3) << 3) == ``\$n``);``}` `// Driver program``\$n` `= 16;` `if` `(Div_by_8(``\$n``))``    ``echo` `"YES"``;``else``    ``echo` `"NO"``;``        ` `//This code is contributed by mits.``?>`

## Javascript

 ``
`YES`

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.  To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.

In case you wish to attend live classes with experts, please refer DSA Live Classes for Working Professionals and Competitive Programming Live for Students.

My Personal Notes arrow_drop_up