$bob = 123.4567; print &print_fixed($bob). "\n"; exit 0; sub print_fixed { my $num = shift; my $ipart = int($num); my $dpart = sprintf("%.3f",$num); my ($frac_part) = $dpart=~ /\.(\S*)/; return $ipart . $frac_part; }