Here is a Perl script:
#!/usr/bin/perl
use strict;
use warnings;
use feature \'say\';
my @numbers = qw(
0.254
0.255
0.256
);
foreach my $number (@
If you add this line:
$number = sprintf '%.15f', $number;
before printing, you will have:
0.254000000000000 => 0.25
0.255000000000000 => 0.26
0.256000000000000 => 0.26
100.254000000000005 => 100.25
100.254999999999995 => 100.25
100.256000000000000 => 100.26
as you can see, 100.255
is not exactly 100.255
this is due to representation of float numbers.