TOY VOX

管理人VOX6336が昭和レトロな遊びをするだけのブログです。スマートフォンでの閲覧推奨。

ポーカー 7

2021-11-21 20:49:46 |  カード
 さて役(ポーカーハンド)の判定。まずはいちばん簡単な「フラッシュ」から。


 5つの配列変数 suit() がすべて同じであればフラッシュが成立する。ワンペアから数えて5番目の役なので、フラッシュの成立を仮に hand=5 としておこう。


 手札が配られた時点でフラッシュが成立する確率は、
1×(12/51)×(11/50)×(10/49)×(9/48)
=11880/5997600
=0.002

 だいたい500回に1回はフラッシュになるはずだ。ためしに何回かやってみよう。
 1回目。156回でフラッシュ。

 2回目。208回でフラッシュ。


 3回目。1139回目でフラッシュ。






コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

ポーカー 6

2021-11-21 19:30:30 |  カード
 記号と数字を配列変数に抜き出したので、表示サブルーチンはいらなくなった。削ってしまおう。ついでにカードを手札に変換する必要もなくなったので、配列変数 hand(1-5) もなくしてしまおう。


 いちおう実行。


 プログラムがだいぶすっきりとした。



コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

ポーカー 5

2021-11-21 19:12:44 |  カード
 役の判定をするために、手札の記号と数字をそれぞれ配列変数 suit(1-4) と numb(1-13) に抜き出す。
 記号はカード番号を13で割った整数部分。数字はカード番号を13で割った余り部分。


実行。


左から、スペードのエースは記号0、数字1。スペードの2は記号0、数字2。スペードのジャックは記号0、数字11。ダイヤの3は記号2、数字3。ダイヤの5は記号0、数字5。




コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

ポーカー 4

2021-11-21 19:01:04 |  カード
 52枚のカードをシャッフルして、5枚を配るところまでできた。これをポーカーにするには以下の2つの手順を作らなければならない。
①いらない手札を交換する
②役を判定する
 ポーカーができたあと確率の計算をしてみたいと思うので、とりあえず①の手順は省略する。
 シャッフルのプログラムを簡略化しよう。とりあえず重複しない5枚のカードがあればいいので、プログラムはこうなる。



実行。





コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

ポーカー 3

2021-11-21 15:32:41 |  カード
 手札 card(1-52) が数字では分かりにくいので、スーツ(記号)と数字で表示する。このようにサブルーチンを組んで、


実行。


 二次元配列 card(1-4,1-13) としてもよいが、一次元配列のほうが役の判定が作りやすいように思う。

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする