print $_,$/ for ronge(qw( 3.0 4.0 0.1 )); sub ronge { my( $lll, $rrr, $iii ) = @_; my @rrr = $lll; while( $lll <= $rrr ){ $lll += $iii; push @rrr, sprintf '%.1f', $lll; } return @rrr; } __END__ 3.0 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 4.0