+ -
当前位置:首页 → 问答吧 → perl实例精解的一道题,求解

perl实例精解的一道题,求解

时间:2011-03-08

来源:互联网

编写一段脚本 , 从一叠纸牌中随机抽取 10 张 , 并打印结果值 。
a. 该脚本应当先借助 foreach 循环构建一套 52 张牌 。
b. 外层循环负责按照花色遍历整套纸牌:
梅花、 方块 、 红桃 、 黑桃 。 内层循环则针对每一种花色
遍历所有数字 : A 、到 10 、 J 、 Q 以及 K 。 从各花色获得的纸牌都将赋值到一个数组中 。
c. 使用 rand() 函数从上述数组中随机获得一张纸牌 。
这样做便能保证获得的 10 张纸牌互不重复 。

作者: 超级细菌   发布时间: 2011-03-08

#!/usr/bin/perl -w

use 5.012;
use List::Util 'shuffle';
use Data::Dumper;

my @cards;

for my $color ('梅花', '方块', '红桃', '黑桃') {
    for my $point ( 'A', 2 .. 10, 'J', 'Q', 'K') {
        push @cards, [$color, $point];
    }
}

print Dumper [(shuffle @cards)[0 .. 9]]

作者: zhlong8   发布时间: 2011-03-08