this post was submitted on 21 Dec 2024
73 points (94.0% liked)
Fun Loops ▶️
315 readers
252 users here now
Posting interesting/cool/funny videos from Loops here
Thanks to @Bluefruit @lemmy.world for the icon and banner!
Discussion of and questions about Loops should go over in !loops@lemmy.world
If the loop you're posting isn't original content uploaded by the creator, prefix the title with [R]
for "reposted". For example, [R] Cute dog
.
Rules:
- Don't be a dick
- Don't make me add more rules
founded 1 month ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
I'm sorry, but even without knowing about the mod operator, this is inefficient and over engineered. Why have a loop at all?
no loop required...
having said that, I can totally see how that was missed in a high pressure interview. I hate interviews like that!
edit: Ha ha... isEven...not isPositive... I'm tired. ignore me!
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.
you might be able to do it with a bitwise op? My track record tonight is not great so I'm not going to comment. Have a look at @ImplyingImplactions comment for a loopless solution
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.
Ha ha ha, yup... whoops!
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).
Yep! I'm wrong. Pretty embarrassing!
That's a nice solution though! Gonna have to try and remember that one!
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.yes, I'm being a dumb tonight. I'm completely wrong
Haha, s'all good, yo.