$num2 is a float with rounding error after already before the multiplication.
Just the string representation will ignore the rounding error hence eq will work here.
I that's reliable for all cases? I don't dare saying.
DB<4> $num2 ="19.90" DB<5> printf "%.20f", $num2*100 1989.99999999999980000000 DB<6> p 1990 == $num2 *100 DB<7> p 1990 eq $num2 *100 1 DB<8> say ">". $num2 *100 ."<" >1990< DB<9>
Cheers Rolf
(addicted to the Perl Programming Language :)
Wikisyntax for the Monastery
In reply to Re^2: number comparison with a twist
by LanX
in thread number comparison with a twist
by anotherguest
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |