How to check if a number is divisible by 16 without using operator / or % ?
Interview Answers
Anonymous
Aug 5, 2018
Bit wise right shift four times, if integer then divisible.
1
Anonymous
Mar 23, 2019
If a number is divisible by 2^n, do bitwise right shift n times and then bitwise left shift n times to get back the same number.
1
Anonymous
Oct 2, 2017
should do using bit-wise operators
1
Anonymous
Jul 22, 2018
I will run a loop that'll subtract 16 from the number. If result is zero than it is divisible else if it goes less than zero than its is not.
Anonymous
Jan 9, 2020
if(16>>4 == 0 )
True;
else
False
1
Anonymous
Jan 9, 2020
The above condition should be 1 instead of 0.
if(16>>4 == 1 )
True;
else
False
Anonymous
Feb 19, 2019
for(int i=0;in)
{
break;
}
//number is not divisible by 16
//which will be decided by the flag
}
}
Anonymous
Feb 19, 2019
Sorry for that incompleted answer ! I want to say that simply use a loop upto n and multiply each number with 16 and store in a variable and then go for a check if it is matched by n or not.
If matched then flag==true else break;