Python Program to find whether a no is power of two

PythonServer Side ProgrammingProgramming

In this article, we will learn about the solution to the problem statement given below.

Problem statement − We are given a number, we need to check that the number is a power of two or not.

We can solve this using two approaches as discussed below.

Approach 1: Taking the log of the given number on base 2 to get the power

Example

 Live Demo

# power of 2
def find(n):
   if (n == 0):
      return False
   while (n != 1):
      if (n % 2 != 0):
         return False
      n = n // 2
   return True
# Driver code
if(find(98)):
   print('Yes')
else:
   print('No')

Output

No

Approach 2: Using the logical statements

Example

 Live Demo

# power of 2
def find(x):
   # if x is 0 or not
   return (x and (not(x & (x - 1))) )
# Driver code
if(find(98)):
   print('Yes')
else:
   print('No')

Output

No

Conclusion

In this article, we have learned how we can check that the given number is a power of two.

raja
Published on 24-Dec-2019 09:46:51
Advertisements