このディレクトリの索引
#  
#  与えたリストをシャッフルするshuffle/2を実装してください。
#  
#  ?- shuffle([a,b,c], X).
#  X = [b,a,c];
#  false
#  

shuffle(_カードの束,_切られたカードの束) :-
        length(_カードの束,_カードの枚数),
        _カードの枚数 > 2,
        M is _カードの枚数 // 12 + 3,
        _乱数値 is random(M),
        length(L0,_乱数値),
        append(L0,L1,_カードの束),
        shuffle(L1,_カードの束_2),
        append(_カードの束_2,L0,_切られたカードの束),!.
shuffle(_カードの束,_カードの束).