こんばんは、ファルコンMです。
Web ブラウザでババ抜きをするプログラミング。今回は、やっとコーディングっぽいことをします。
Web ブラウザ上で動作させたいので、jquery でコードを書きます。
プログラミングでトランプの山札を作って、シャッフルしよう
開始ボタンを押したら、山札を作って、その山札をシャッフルするコードはです。
<!-- 開始ボタン押し --> $("#start").on("click", function(){ <!-- 山札 --> var deck = []; <!-- 山札にカードをセット --> for(var i=0; i<;53; i++) { deck[i] = i; } <!-- 山札シャッフル --> for(var i=0; i<150; i++) { var tmp; var rand1 = Math.floor( Math.random() * 53); var rand2 = Math.floor( Math.random() * 53); tmp = deck[rand1]; deck[rand1] = deck[rand2]; deck[rand2] = tmp } });
var deck で山札を宣言します。その次のfor文で山札にカードをセットします。deck には、0~52の数値を割り当てています。0~12はダイヤの1~13、13~25 はクローバー、26~38 はハート、39~51はスペード、52はジョーカーを表しています。
次のfor文で山札をシャッフルします。
rand1 と rand2 で0~52 の数値のランダム値を取得します。その後、山札のrand1番目とrand2番目のカードを入れ替えます。
それを150回繰り返しています。
すなわち、山札シャッフルは、山札からランダムで2枚カードを選んで場所を入れ替え、これを繰り返すことで実現しています。
ただ、このシャッフルは、今後も使うと思うので、いずれは関数化するだろうな。
↓は参考書籍
jQueryレッスンブック ステップバイステップ形式でマスターできる [ 山崎大助 ]
コメントを残す