Stop using floats
You're viewing a single thread.
While we're at it, what the hell is -0 and how does it differ from 0?
It's the negative version
So it's just like 0 but with an evil goatee?
Look at the graph of y=tan(x)+ⲡ/2
-0 and +0 are completely different.
For integers it really doesn't exist. An algorithm for multiplying an integer with -1 is: Invert all bits and add 1 to the right-most bit. You can do that for 0 of course, it won't hurt.