You need to work with lists
Choose-N from each set
my @chosen = ChooseN( 2 , \@set ); push @chosen, ChooseN( 4 , \@set ); push @chosen, ChooseN( 6 , \@set ); push @chosen, ChooseN( 8 , \@set );
Then shuffle those playing cards :)
use List::Util 'shuffle'; @chosen = shuffle @chosen;
And then make them presentable
my $chosen = ''; while(@chosen){ $chosen .= join '', splice @chosen, 0, 6; $chosen .= ' ' if @chosen; } return $chosen;
What am I doing wrong and am I even on the right track?
Not sure, but see also Opportunity to excel / Enough With The Rainbow Tables: What You Need To Know About Secure Password Schemes
And see also Crypt::RandPasswd, Crypt::PassGen, String::MkPasswd
In reply to Re: Handling elements of an array of array references, where the function calls for an array?
by Anonymous Monk
in thread Handling elements of an array of array references, where the function calls for an array?
by desertrat
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |