Without using the modulo operator you’d essentially have to reimplement it. Divide the number by 2 and round down. Multiply that by 2 and then subtract it from the original number.
isEven(10) results in 10-10==0 (true) whereas isEven(13) results in 13-12==0 (false).
deleted by creator
Because the abs(3) == 3 is true and that isn’t even.
An even number of flips would be true and an odd number of flips would be false which works out.
I was thinking a bitwise & or converting it to a string and testing if the right most character is 0, 2, 4, 6, 8 would be panic mode solutions too.
deleted by creator
Bitwise and with 0x1. If result is 0, it’s even. Least significant bit is always 1 for odd numbers.
Lol I think the interview pressure got to you.
deleted by creator
That would be isPositive.
Without using the modulo operator you’d essentially have to reimplement it. Divide the number by 2 and round down. Multiply that by 2 and then subtract it from the original number.
isEven(10) results in 10-10==0 (true) whereas isEven(13) results in 13-12==0 (false).
function isEven(n){ n = Math.abs(n) return (n - (Math.floor(n/2) * 2)) == 0 }
deleted by creator
Minor simplification: this works even without taking absolute value first of you use fix instead of floor.
Edit: I don’t know if fix is in the stock math library on second thought…
I’m not following.
n == abs(n)
only tells you if it’s positive.deleted by creator
Haha, s’all good, yo.