my $total_time = 0; my $num_records = 0; while () { chomp; my ($hour, $min, $sec) = split /:/; $total_time += $hour * 3600 + $min * 60 + $sec; ++$num_records; } print format_time($total_time), "--Total Time\n"; print format_time($total_time/$num_records), "--Avg Time\n"; sub format_time { my $seconds = shift; my $hours = int($seconds / 3600); my $minutes = int($seconds / 60 - $hours * 60); my $sec = int($seconds - $hours * 3600 - $minutes * 60); sprintf "%02d:%02d:%02d", $hours, $minutes, $sec; }