Give a one-line C expression to test whether a number is a
power of 2.
Answers were Sorted based on User's Feedback
Answer / lakshmi
void main()
{
int a;
scanf("%d",&a);
if((a&a-1)==0)
printf("Is a power of 2");
else
printf("Not a power of 2");
}
| Is This Answer Correct ? | 36 Yes | 8 No |
Answer / fallen angel
if(x&(x-1)==0)
then TRUE;
else
FALSE;
use the bitwise and operator
| Is This Answer Correct ? | 24 Yes | 2 No |
Answer / mayur shankariya
#include<stdio.h>
main()
{
int num;
printf("Enter Number
");
scanf("%d",&num);
(num & num - 1)? printf("Not
"):printf("Power of two
");
}
| Is This Answer Correct ? | 2 Yes | 0 No |
Answer / rarach
if( (a == 2 ) || ((a/2) %2 == 0 ) && a !=1)
TRUE
else
false
| Is This Answer Correct ? | 1 Yes | 3 No |
Answer / rohit
if((log(n)/log(2))/floor(log(n)/log(2))==1)
then TRUE;
else FALSE;
| Is This Answer Correct ? | 1 Yes | 5 No |
Answer / ramesh b penchal
#include<stdio.h>
main()
{
int n,i,d,m;
printf("Enter a number");
scanf("%d",&n);
m=n;
while(n>0)
{
d=n%10;
if(d!=0)
{
prntf("%d is not power of 2",m);
getch();
exit();
}
n=n/10;
}
prntf("%d is power of 2",m);
getch();
}
| Is This Answer Correct ? | 0 Yes | 5 No |
Answer / santhoo035
#include<iostream.h>
int main()
{
int n,i;
cout<<"Enter a number";
cin>>n;
for(i=1;i<n/2;i++)
{
if((2<<i)==n)
{
cout<<"The given no is power of 2";
break;
}
}
}
| Is This Answer Correct ? | 3 Yes | 9 No |
Answer / akshay rastogi
#include<conio.h>
void main()
{
int n,i=0,num=0;
printf("\n enter any number");
scanf("%d",&n);
while(num<=n)
{
i++;
num=2^i;
}
if(num==n)
printf("yes no. is power of 2");
else
printf("no.");
}
| Is This Answer Correct ? | 0 Yes | 6 No |
Answer / abc def
/*following expr evaluates to true if num is a power of
2.Else it's false. '&' - bitwise and.*/
(num == 1) || !(num & 1)
| Is This Answer Correct ? | 0 Yes | 9 No |
Answer / trailokya ranjan jena
#include<stdio.h>
void main()
{
int i,j;
clrscr();
printf("\n Enter a num");
scanf("%d",&i);
j=i;
for(;i%2==0;i/=2);
if(i==1)
printf("\n%d is power of 2",j);
else
printf("\n%d is not a power of 2");
getch();
}
| Is This Answer Correct ? | 4 Yes | 18 No |
Set up procedure for generating a wire frame display of a polyhedron with the hidden edges of the object drawn with dashed lines
x=2 y=3 z=2 x++ + y++; printf("%d%d" x,y);
Implement a t9 mobile dictionary. (Give code with explanation )
1 Answers Amazon, Peak6, Yahoo,
Finding a number multiplication of 8 with out using arithmetic operator
can you use proc sql to manpulate a data set or would u prefer to use proc report ? if so why ? make up an example and explain in detail
Can you send Code for Run Length Encoding Of BMP Image in C Language in linux(i.e Compression and Decompression) ?
main() { int i=300; char *ptr = &i; *++ptr=2; printf("%d",i); }
All the combinations of prime numbers whose sum gives 32
void main() { char a[]="12345\0"; int i=strlen(a); printf("here in 3 %d\n",++i); }
Is this code legal? int *ptr; ptr = (int *) 0x400;
#include<stdio.h> main() { struct xx { int x; struct yy { char s; struct xx *p; }; struct yy *q; }; }
Is there any difference between the two declarations, 1. int foo(int *arr[]) and 2. int foo(int *arr[2])