Warto zauważyć, że ten kod jest niezwykle kruchy w przypadku reprezentacji zmiennoprzecinkowej. Ten kod zadziała, jeśli i tylko wtedy, gdy wartość zmiennoprzecinkowa wynosi dokładnie 0, co w większości przypadków jest mało prawdopodobne. Może nie być w tym konkretnym przypadku, ale z pewnością powinno być udokumentowane/skomentowane, jeśli tak.
W praktycznie wszystkich innych sytuacjach musisz zdecydować o numerze "epsilon value", który definiuje zakres liczb zmiennoprzecinkowych, które uważasz za "takie same" - w przeciwnym razie twoje porównania mogą zaskoczyć Cię w rogu (i często w innym miejscu)) przypadki.
Należy również zwrócić uwagę na NaN –