if  ( x&(x-1)==0 )
      then number is of forn 2^n
else
     false

put a separate check for x=0 as the above will not work for x=0
explanation-
take x = 8 =1000
x-1 = 7 =111
clearly x&(x-1) is 0

similarly do for a number which is not 2^n....

hope this helps !!
--


Amol Sharma
Third Year Student
Computer Science and Engineering
MNNIT Allahabad




On Sat, Jul 30, 2011 at 12:01 PM, tech rascal <[email protected]>wrote:

> thanx for the explanation saurabh....
>
>
> On Sat, Jul 30, 2011 at 11:54 AM, ankit sambyal <[email protected]>wrote:
>
>> If x is the number which is to be checked,
>>
>> if (x && !(x & (x-1)) == 0)
>> then power of 2
>>
>>
>>  --
>> You received this message because you are subscribed to the Google Groups
>> "Algorithm Geeks" group.
>> To post to this group, send email to [email protected].
>> To unsubscribe from this group, send email to
>> [email protected].
>> For more options, visit this group at
>> http://groups.google.com/group/algogeeks?hl=en.
>>
>
>  --
> You received this message because you are subscribed to the Google Groups
> "Algorithm Geeks" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected].
> For more options, visit this group at
> http://groups.google.com/group/algogeeks?hl=en.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Algorithm Geeks" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/algogeeks?hl=en.

Reply via email to