in reply to Re: (jeffa) Re: Finding most popular order in a multidimensional associative array
in thread Finding most popular order in a multidimensional associative array

Hey ... this isn't homework is it? ;)

A for loop works on a list. The inner for loop iterates on the sorted keys of the hash %counted, what we could do is specify a subscript for that list. First, a simple example:

use strict; my @array = (0..999); # retrieve only the first 10 elements: my @top_ten = @array[0..9]; print "$_\n" for @top_ten;
So, if we want to only display the top 3 most popular items, we could do this:
# ... original code for ((sort { $counted{$b} <=> $counted{$a} } keys %counted)[0..2]) { # ... etc. }
If you want to avoid hard-coding the number, be sure and subtract 1, or start the subscript at 1:
# pick one: my $max = 2; # use [0..$max] my $max = 3; # use [1..$max] or [0..$max-1]

jeffa

L-LL-L--L-LL-L--L-LL-L--
-R--R-RR-R--R-RR-R--R-RR
B--B--B--B--B--B--B--B--
H---H---H---H---H---H---
(the triplet paradiddle with high-hat)

Replies are listed 'Best First'.
Re: (jeffa) 3Re: Finding most popular order in a multidimensional associative array
by Anonymous Monk on Aug 05, 2002 at 01:12 UTC
    Nope, it's not homework! Just a network admin struggling with a programming task. I sure do appreciate the assistance though. Sites like this make me want to find sites where I can go and help people out using my expertise like you have done for me.

    Thanks again.