Update:Well Ooops..... Somehow there is a precision problem. Sorry I couldn't replicate it.foreach (-2.0,-1.9,-1.5,-1.1,-1.0,-0.9,-0.5,-0.1,-0) { printf("string=%5s digits=%9f, float2big=%24.16e\n", $_, $_, $_); } __END__ prints: string= -2 digits=-2.000000, float2big=-2.0000000000000000e+000 string= -1.9 digits=-1.900000, float2big=-1.8999999999999999e+000 string= -1.5 digits=-1.500000, float2big=-1.5000000000000000e+000 string= -1.1 digits=-1.100000, float2big=-1.1000000000000001e+000 string= -1 digits=-1.000000, float2big=-1.0000000000000000e+000 string= -0.9 digits=-0.900000, float2big=-9.0000000000000002e-001 string= -0.5 digits=-0.500000, float2big=-5.0000000000000000e-001 string= -0.1 digits=-0.100000, float2big=-1.0000000000000001e-001 string= 0 digits= 0.000000, float2big= 0.0000000000000000e+000
foreach (-2.0,-1.9,-1.5,-1.1,-1.0,-0.9,-0.5,-0.1,-0) { printf("string=%5s digits=%9f, float2big=%24.16e\n", $_, $_*0, $_*0); } string= -2 digits= 0.000000, float2big= 0.0000000000000000e+000 string= -1.9 digits= 0.000000, float2big= 0.0000000000000000e+000 string= -1.5 digits= 0.000000, float2big= 0.0000000000000000e+000 string= -1.1 digits= 0.000000, float2big= 0.0000000000000000e+000 string= -1 digits= 0.000000, float2big= 0.0000000000000000e+000 string= -0.9 digits= 0.000000, float2big= 0.0000000000000000e+000 string= -0.5 digits= 0.000000, float2big= 0.0000000000000000e+000 string= -0.1 digits= 0.000000, float2big= 0.0000000000000000e+000 string= 0 digits= 0.000000, float2big= 0.0000000000000000e+000
In reply to Re^2: Negative zero from a multiplication by a zero?
by Marshall
in thread Negative zero from a multiplication by a zero?
by Anonymous Monk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |