#! perl -slw use strict; my @data; push @data, [ split ] while ; @data = sort { $a->[ 0 ] * $a->[ 2 ] <=> $b->[ 0 ] * $b->[ 2 ] } @data; print "Lowest: ". join "\t", @{ $data[ 0 ] }; print "Highest:", join "\t", @{ $data[-1 ] }; __DATA__ 2870 S11 1 574 S11 2 317 S11 3 31 S11 4 1 S11 6 1 S11 7 2925 S12 1 8 S12 5 1 S12 6 1 S12 9