今回のお題は、乱数を利用してサイコロを振る処理を紹介します。関数化してあるので、同時に複数のサイコロを振るプログラムにも利用できます。
プログラムの解説と実行
サイコロを100回振る
1~6までの数字をランダムに出力します。今回はJavaScriptに標準実装のrandom関数を使って乱数を生成しています。
サイコロを2個振る
サイコロを2個振ってそれぞれの合計を出します。各サイコロは1~6までの数字をランダムに出力します。
JavaScriptソースコード
本記事で紹介したサンプルプログラムをダウンロードできます。
ダウンロードをする前にお読みください
- サイトで紹介している記事の内容や公開しているプログラムの動作は100%保障するものではありません。
- 当プログラム使用による如何なる不具合やトラブル、損害の責任も負いかねます。
- 当プログラムは断り無く内容が変わることがあります。
- 当プログラムを別サイトで配布することは禁止します。
- サポートはいたしません。
- 自己責任にてご利用くださいませ。
以上をご確認の上、プログラムのダウンロードをお願いいたします。
- 本プログラムはjQueryを組み込んだ状態じゃないと動作しません。ご注意ください。
サンプルプログラムのソースコード
ソースコードは折りたたんであります。[+]を押すと、折りたたまれたソースコードが開きます。[-]を押すと、コードは折りたたまれます。
+ program_003.jsのソースコードを開く
//=======================================================================================
//サイコロの目を出す関数
//spotsmin以上spotsmax以下の乱数が生成される。【(最大値 - 最小値 + 1) + 最小値】
function makeSpotsDice(){
var spotsmax = 6;//最大値
var spotsmin = 1;//最小値
var spotsdice = Math.random()*(spotsmax - spotsmin + 1) + spotsmin;//
spotsdice = Math.floor(spotsdice); //少数以下を丸める
return spotsdice;
}
//=======================================================================================
$("#DiceBtn1").click(function() {
var spotsdice;//賽の目
var i;
$("#resultPanel").empty();
for(i=0;i<100;i++){
spotsdice = makeSpotsDice();//サイコロを振る関数を呼び出す
if (i==19||i==39||i==59||i==79||i==99){
spotsdice += "<br>";
}else{
spotsdice += ",";
}
$("#resultPanel").append(spotsdice);
}
});
//=======================================================================================
$("#DiceBtn2").click(function() {
var n1,n2,n3;//賽の目
n1 = makeSpotsDice();//賽の目1
n2 = makeSpotsDice();//賽の目2
n3 = n1 + n2;//賽の目合計
$("#n1").empty().append(n1);
$("#n2").empty().append(n2);
$("#n3").empty().append(n3);
});
//=======================================================================================
おすすめレンタルサーバー
エックスサーバー|高速・高機能レンタルサーバー
「オールSSDの快適ハイスペック環境」「国内管理、大容量バックボーン」「独自SSLが無料」「FastCGIなどの高速化機能」「最新のPHP7を実装」など、高機能・高コストパフォーマンスなレンタルサーバーです。※当サイトも「エックスサーバー」で運用しています。