http://qs321.pair.com?node_id=651913


in reply to confused with summing certain elements from an array

I want to make a hash contains as keys the unique elements from the @out and as values the sums of the letters from the @out1. Also I want the hash to be sorted
You can do this:

my %counts; while (my $key = shift @out) { $counts{$key} += shift @out1; }
That looks silly to me though... why would the data be in parallel arrays to begin with?

Also I want the hash to be sorted
Hashes aren't sorted.

You can iterate the keys of the hash in order as follows:

print "$_: \t$counts{$_}\n" for sort keys %counts;

-David