in reply to What can I do to improve my code - I'm a beginner

@date1 = ($dt[0], $dt[1], $dt[2], $dt[3], $dt[4], $dt[5]);
This kind of thing is redundant and error-prone. That's why we have array slices!
@date1 = @dt[0..5];
Another redundancy:
chomp($line1); my @mg1 = split(/,/, $line1); my $line2 = <IN>; chomp($line2); my @mg2 = split(/,/, $line2); my $line3 = <IN>; chomp($line3); ...
You've replaced it with a loop that calls Add_Delta_DHMS on every line, not just once per twelve lines, so it's not equivalent at all. I would tend to write something like this:
my ($sum) = split /,/, $line; for (2..12) { my ($val) = split /,/, <IN>; $sum += $val; }

Replies are listed 'Best First'.
Re^2: What can I do to improve my code - I'm a beginner
by Anonymous Monk on Aug 11, 2017 at 08:52 UTC
    That array slice thing makes so much sense! Thank you! Also I now understand why my second code was running a lot slower - because I was calling the Add_Delta_DHMS every line. You've been a big help! Thank you!