Playing cards: Difference between revisions

Pari/GP
(→‎Perl 6: re-added ace and ten back in; no local Perl6 so can't test but SHOULD work)
(Pari/GP)
Line 1,134:
deck.(j) <- temp
done</lang>
 
=={{header|PARI/GP}}==
<lang>name(n)=Str(["A",2,3,4,5,6,7,8,9,10,"J","Q","K"][(n+3)>>2],["h","d","s","c"][n%4+1]);
newdeck()={
v=vector(52,i,i);
};
deal()={
my(n=name(v[1]));
v=vecextract(v,2^#v-2);
n
};
printdeck(){
apply(name,v)
};
shuffle()={
forstep(n=#v,2,-1,
my(i=random(n)+1,t=v[i]);
v[i]=v[n];
v[n]=t
);
v
};</lang>
 
=={{header|Perl}}==