# Round to next greater multiple of 8

• Difficulty Level : Medium
• Last Updated : 12 May, 2021

Given an unsigned integer x. Round it up to the next greater multiple of 8 using bitwise operations only.
Examples:

```Input : 35
Output : 40

Input : 64
Output : 64 (As 64 is already a multiple of 8. So, no modification is done.)```

Solution 1: We first add 7 and get a number x + 7, then we use the technique to find next smaller multiple of 8 for (x+7). For example, if x = 12, we add 7 to get 19. Now we find next smaller multiple of 19, which is 16.
Solution 2: An efficient approach to solve this problem using bitwise AND operation is:
x = (x + 7) &(-8)
This will round up x to the next greater multiple of 8.

## C++

 `// CPP program to find smallest greater multiple``// of 8 for a given number``#include ``using` `namespace` `std;` `// Returns next greater multiple of 8``int` `RoundUp(``int``& x)``{``    ``return` `((x + 7) & (-8));``}` `int` `main()``{``    ``int` `x = 39;``    ``cout << RoundUp(x);``    ``return` `0;``}`

## Java

 `// Java program to find smallest``// greater multiple of 8 for``// a given number``import` `java.util.*;``import` `java.lang.*;` `// Returns next greater``// multiple of 8``class` `GFG``{``    ``static` `int` `RoundUp(``int` `x)``    ``{``        ``return` `((x + ``7``) & (-``8``));``    ``}``    ` `    ``// Driver Code``    ``public` `static` `void` `main(String args[])``    ``{``        ``int` `x = ``39``;``        ``System.out.println(RoundUp(x));``    ``}``}` `// This code is contributed``// by Akanksha Rai(Abby_akku)`

## Python 3

 `# Python 3 program to find``# smallest greater multiple``# of 8 for a given number` `# Returns next greater``# multiple of 8``def` `RoundUp(x):``    ``return` `((x ``+` `7``) & (``-``8``))``    ` `# Driver Code``x ``=` `39``print``(RoundUp(x))` `# This code is contributed``# by prerna saini`

## C#

 `// C# program to find smallest``// greater multiple of 8 for``// a given number``using` `System;` `// Returns next greater``// multiple of 8``class` `GFG``{``    ``static` `int` `RoundUp(``int` `x)``    ``{``        ``return` `((x + 7) & (-8));``    ``}``    ` `    ``// Driver Code``    ``public` `static` `void` `Main()``    ``{``        ``int` `x = 39;``        ``Console.WriteLine(RoundUp(x));``    ``}``}` `// This code is contributed``// by SoumikMondal`

## PHP

 ``

## Javascript

 ``
Output:
`40`

Time Complexity: O(1)
Space Complexity: O(1)

My Personal Notes arrow_drop_up