マーチンゲール法とは、勝つまでは賭け金を倍にしていく方法です。どんなに負け続けても1回勝てばすべての負けを取り戻すことができるので一見、丁半博打の必勝法のようにみえます。しかしマーチンゲール法は危険な方法です。必ず最後は破産します。

マーチンゲール法は勝つまでは賭け金を倍、倍と増やしていくため相当の軍資金を用意しなければなりません。そして何度もこの方法を繰り返しているとどこかでとんでもない連敗をすることになります。これをプログラミングで証明してみることにします。

サイコロをふたつ用意して目の和が偶数であれば勝ち、奇数であれば負けとします。

ボタンがクリックされたら最初の所持金は10000円、最初の賭け金は100円で負けたら賭け金を2倍にして勝った場合は賭け金を元の100円に戻して破産するまで丁半博打を繰り返します。最後に結果を可視化するためにBitmapを作成して表示させます。

Bitmapを生成する処理を示します。

フィールド変数のBitmapがnullでない場合はこれをフォーム上に描画します。