sub roundThatBadDog { my $seconds = shift; return sprintf("%d", $seconds); } #### Benchmark: timing 100000 iterations of japhy, rob_au... japhy: 3 wallclock secs ( 4.13 usr + 0.00 sys = 4.13 CPU) @ 24213.08/s (n=100000) rob_au: 4 wallclock secs ( 4.23 usr + 0.00 sys = 4.23 CPU) @ 23640.66/s (n=100000) #### #!/usr/bin/perl use Benchmark; use strict; timethese(100000, { 'rob_au' => q! my @values = ( 1.24, 5.43, -98.54, -73.667, 0.67, 2.34, 76.89, -999.99, 34.52, 67.89 ); foreach my $value (@values) { my $result = sprintf("%d", $value); } !, 'japhy' => q! my @values = ( 1.24, 5.43, -98.54, -73.667, 0.67, 2.34, 76.89, -999.99, 34.52, 67.89 ); foreach my $value (@values) { my $result = int($value * 10**0 + .5 * ($value < 0 ? -1 : 1)) / 10**0; } ! });