You need to move a bracket

print "@startingdeck[0 .. 4]\n";

}    <--------------- This should be above the print statement




}
print "@startingdeck[0 .. 4]\n";


You might also want to change the 99 to something else 
to get a more RANDom seeming shuffle but you said this was a snippet so
that may be taken care of in the real code.  

-----Original Message-----
From: Amichai Teumim [mailto:[EMAIL PROTECTED] 
Sent: Thursday, July 12, 2007 10:34 AM
To: beginners@perl.org
Subject: Still stuck with my cards

I'm still stuck with this. It shuffles the cards, then replaces the
letter
representing the card (such as H = heart) with the word. Then it's meant
to
print the top five cards (meanign the five cards that come first after
the
shuffling). Somethign like:

9 Heart 10 Heart J Heart Queen Heart King Heart 6 Diamonds

This script prints out a whole bunch of stuff. What is wrong with it?
Snippet followds: (Thank you)

#!/usr/bin/perl

use strict;
use warnings;


my @startingdeck = ("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");

foreach (@startingdeck) {
       s/A/Ace/;
       s/K/King/;
       s/C/Club/;
       s/H/Heart/;
       s/D/Diamond/;
       s/J/Jack/;
       s/Q/Queen/;
       s/S/Spade/;
       s/J/Joker/;

} # your @startingdeck will be modified.


for my $x (0 .. 99) {
       my @shuffle = (
               shift(@startingdeck),
               pop(@startingdeck),
               shift(@startingdeck),
               pop(@startingdeck),
               shift(@startingdeck),
               pop(@startingdeck),
               shift(@startingdeck),
               pop(@startingdeck)
       );

       push @startingdeck, @shuffle;


print "@startingdeck[0 .. 4]\n";

}


______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit http://www.messagelabs.com/email 
______________________________________________________________________



NOTICE OF CONFIDENTIALITY: Information included in and/or attached to this 
electronic mail transmission may be confidential. This electronic mail 
transmission is intended for the addressee(s) only. Any unauthorized 
disclosure, reproduction, or distribution of, and/or any unauthorized action 
taken in reliance on the information in this electronic mail is prohibited. If 
you believe that you have received this electronic mail transmission in error, 
please notify the sender by reply transmission, or contact [EMAIL PROTECTED], 
and delete the message without copying or disclosing it. 

______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit http://www.messagelabs.com/email 
______________________________________________________________________

--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
http://learn.perl.org/


Reply via email to