Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
15
Task/Playing-cards/OCaml/playing-cards.ocaml
Normal file
15
Task/Playing-cards/OCaml/playing-cards.ocaml
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
type pip = Two | Three | Four | Five | Six | Seven | Eight | Nine | Ten |
|
||||
Jack | Queen | King | Ace
|
||||
let pips = [Two; Three; Four; Five; Six; Seven; Eight; Nine; Ten;
|
||||
Jack; Queen; King; Ace]
|
||||
type suit = Diamonds | Spades | Hearts | Clubs
|
||||
let suits = [Diamonds; Spades; Hearts; Clubs]
|
||||
type card = pip * suit
|
||||
let full_deck = Array.of_list (List.concat (List.map (fun pip -> List.map (fun suit -> (pip, suit)) suits) pips))
|
||||
let shuffle deck =
|
||||
for i = Array.length deck - 1 downto 1 do
|
||||
let j = Random.int (i+1) in
|
||||
let temp = deck.(i) in
|
||||
deck.(i) <- deck.(j);
|
||||
deck.(j) <- temp
|
||||
done
|
||||
Loading…
Add table
Add a link
Reference in a new issue