in reply to Strange concerning floats

I tested with C, and got a similar result if I used 'float' while I got a less-rounded result if I used 'double', so I guess perl does it with floats is the reason for the roundoff.
#include <stdio.h> int main() { float d, f; d = 0.1; for (f = 0.0; f < 7; f += d) { printf("f = %f\n", f); } return 0; } $ ./precision-test ... f = 2.500000 f = 2.600000 f = 2.700000 f = 2.799999 f = 2.899999 ...
(then if I change float to double, it's all 6.900000, etc..)