in reply to Re: Incrementing string arrays when used with foreach loops
in thread Incrementing string arrays when used with foreach loops
I can't tell if the <readmore> tags are workingYes, the <readmore> tags are working.
it would be good to get feedback on logic, style, most anything, really
As others have strongly hinted, only a single array is necessary. What you have is overly complicated. Rather than answer your pointed questions, consider the following code, which is really tilly's approach:
use strict; use warnings; my @cards; for my $suit (qw(_clb _dmd _hrt _spd)) { for my $rank (2 .. 10, qw(j q k a)) { push @cards, $rank . $suit; } } for (1 .. 10) { my $index = int rand scalar @cards; print splice(@cards, $index, 1), "\n"; }
Although the instructions do not explicitly call for using splice, it really is the right tool for the job of preventing random duplicates. Each time through the final for loop, a random element is removed from the @cards array.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^3: Incrementing string arrays when used with foreach loops
by ikegami (Patriarch) on Sep 11, 2008 at 01:58 UTC | |
by toolic (Bishop) on Sep 11, 2008 at 03:05 UTC | |
by hangon (Deacon) on Sep 12, 2008 at 09:25 UTC | |
by ikegami (Patriarch) on Sep 12, 2008 at 09:33 UTC | |
by tilly (Archbishop) on Sep 16, 2008 at 06:30 UTC |