RE: shuffling cards



Amichai Teumim <amichai@xxxxxxxxxx> asked:

I want to shuffle a deck of cards and then print out the top
five cards.

Read the Perl faq entry on shuffling arrays (i.e. perldoc -q shuffle).

If you're using a fairly recent version of Perl, this'll get you started.

#!/usr/bin/perl -w

use strict;
use 5.008;
use List::Util 'shuffle';


my @deck = shuffle("A H","2 H","3 H","4 H","5 H","6 H","7 H","8 H",
"9 H","10 H","J H","Q H","K H",
"A D","2 D","3 D","4 D","5 D","6 D","7 D","8 D",
"9 D","10 D","J D","Q D","K D",
"A C","2 C","3 C","4 C","5 C","6 C","7 C","8 C",
"9 C","10 C","J C","Q C","K C",
"A S","2 S","3 S","4 S","5 S","6 S","7 S","8 S",
"9 S","10 S","J S","Q S","K S");

print "Your hand: " . join( ', ', @deck[0..4] ) . "\n";

__END__

HTH,
Thomas
.