シミューレーション 小粒プログラミング

#15 配牌のシャンテン数をシミュレートする

更新日:

Javascriptで遊ぶ麻雀小粒プログラミング 配牌を取った時のシャンテン数の割合をシミュレートします。いままで作ったプログラムを使って結果がどんな感じになるかを見てみましょう。

プログラムの解説と実行

それでは実行してみましょう。プログラムの手順は次のフローチャートを参考にしてください。親がサイコロを振って配牌を取り出すイメージです。13牌で配牌を取る作業は終了です。最後のチョンチョンのチョンの部分は省きますのであしからず。なお、牌山シャッフルの乱数処理は「Mersenne Twister in JavaScript」を使用しています。

Mersenne Twister in JavaScriptと牌山を生成する処理は牌山を生成するを参考にしてください。

シャンテン数を算出するフローチャート
▲配牌のシャンテン数を集計する手順

実行方法と試行回数に要する時間

[開始]ボタンで作業をスタートします。試行回数は1000回です。[中断]ボタンで作業を途中で終わらせることができます。試行回数はプログラム中のグローバル変数の初期値を書きかえれば変更できます。

私のPC環境だと作業が終わるまで約2分かかりました(下囲みを参考)。

OS
Windows7Home Premium Service Pack 1
CPU
Inel Core i5 CPU 750 2.67Ghz 2.67Ghz
実装メモリ
6.00GB
システムの種類
64ビットオペレーティングシステム
ブラウザ
Google Chrome 64ビット版

作業が終わったら[結果を出力]ボタンで集計結果を確認できます。

配牌を取ったときのシャンテン数をシミューレーションした結果
▲集計結果
シャンテン数の割合を算出した結果は、あくまでシミュレートによるものです。本プログラムで導かれた数値は、実際のリアル麻雀やネット麻雀で一致するとは限りません。参考程度にとどめておいてください。
親の配牌:試行回数 = 0
 
シャンテン数:「0」はテンパイになります。
 



JavaScriptソースコード

本記事で紹介したサンプルプログラムをダウンロードできます。

ダウンロードをする前にお読みください

  • サイトで紹介している記事の内容や公開しているプログラムの動作は100%保障するものではありません。
  • 当プログラム使用による如何なる不具合やトラブル、損害の責任も負いかねます。
  • 当プログラムは断り無く内容が変わることがあります。
  • 当プログラムを別サイトで配布することは禁止します。
  • サポートはいたしません。
  • 自己責任にてご利用くださいませ。

以上をご確認の上、プログラムのダウンロードをお願いいたします。

サンプルプログラムのソースコード

ソースコードは折りたたんであります。[+]を押すと、折りたたまれたソースコードが開きます。[-]を押すと、コードは折りたたまれます。

program_015.jsを開く
makeyama.jsを開く
program_015.cssを開く

おすすめレンタルサーバー

エックスサーバー|高速・高機能レンタルサーバー

オールSSDの快適ハイスペック環境」「国内管理、大容量バックボーン」「独自SSLが無料」「FastCGIなどの高速化機能」「最新のPHP7を実装」など、高機能・高コストパフォーマンスなレンタルサーバーです。※当サイトも「エックスサーバー」で運用しています。

 

独自ドメインプレゼントキャンペーン情報

キャンペーン期間中にサーバーアカウントを契約すると、独自ドメインが1つもらえます。しかも、更新料も無料。運用コストを軽減します。

期間は、2017年10月16日より2017年11月30日まで、お見逃しなく。

-シミューレーション, 小粒プログラミング
-,

Copyright© 麻雀ツール点数計算ラボ , 2017 All Rights Reserved.