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 |
main() { int c[ ]={2.8,3.4,4,6.7,5}; int j,*p=c,*q=c; for(j=0;j<5;j++) { printf(" %d ",*c); ++q; } for(j=0;j<5;j++){ printf(" %d ",*p); ++p; } }
write the function. if all the character in string B appear in string A, return true, otherwise return false.
How will you print % character? a. printf(“\%”) b. printf(“\\%”) c. printf(“%%”) d. printf(“\%%”)
#include<stdio.h> main() { const int i=4; float j; j = ++i; printf("%d %f", i,++j); }
void main() { int c; c=printf("Hello world"); printf("\n%d",c); }
Give a oneline C expression to test whether a number is a power of 2?
25 Answers EA Electronic Arts, Google, Motorola,
#include<stdio.h> main() { char s[]={'a','b','c','\n','c','\0'}; char *p,*str,*str1; p=&s[3]; str=p; str1=s; printf("%d",++*p + ++*str1-32); }
write a c program to Create employee record by taking details like name, employee id, address and phone number. While taking the phone number, take either landline or mobile number. Ensure that the phone numbers of the employee are unique. Also display all the details
main() { float i=1.5; switch(i) { case 1: printf("1"); case 2: printf("2"); default : printf("0"); } }
write a origram swaoing valu without 3rd variable
void main() { static int i=5; if(--i){ main(); printf("%d ",i); } }
main() { int i=400,j=300; printf("%d..%d"); }