YouTube動画で期待値プラスの現象を説明後 すぐその場で、ヨコサワさんの相方(ひろき)さんが、
逆の場合もできることに気付いていた。 「本当に?」と思っていましたが、どうも本当なんですね。
条件を逆にして 期待値プラス(A,B) → 期待値マイナス(C)
ゲームA : 52%勝ち1ドル増 48%負け1ドル減 ※期待値プラス
ゲームB : (所持金により変わる)
所持金が3で割れる場合 1%負け1ドル減 99%勝ち1ドル増
所持金が3で割れない場合 85%負け1ドル減 15%勝ち1ドル増 ※期待値プラス
ゲームC : ゲームA/ゲームBをコインの裏表で決める ※期待値マイナス

画像を押すと拡大
'逆パロンド ExeLVBA
Option Explicit
'★★★
Sub 逆GameC()
Dim 所持金 As Long, KK As Long
Dim ws As Worksheet
Set ws = ThisWorkbook.Worksheets(1)
所持金 = 0
For KK = 1 To 10000
If Rnd() < 0.5 Then
所持金 = 所持金 + 逆GameA増減 '逆GameA
Else
所持金 = 所持金 + 逆GameB増減(所持金) '逆GameB
End If
ws.Cells(KK + 5, 9) = 所持金 '印刷
Next KK
End Sub
'★★★
Sub 逆GameB()
Dim 所持金 As Long, KK As Long
Dim ws As Worksheet
Set ws = ThisWorkbook.Worksheets(1)
所持金 = 0
For KK = 6 To 10000
所持金 = 所持金 + 逆GameB増減(所持金)
ws.Cells(KK, 8) = 所持金
Next KK
End Sub
'★★★
Sub 逆GameA()
Dim 所持金 As Long, KK As Long
Dim ws As Worksheet
Set ws = ThisWorkbook.Worksheets(1)
所持金 = 0
For KK = 6 To 10000
所持金 = 所持金 + 逆GameA増減()
ws.Cells(KK, 7) = 所持金
Next KK
End Sub
'◆◆◆
Function 逆GameB増減(所持金)
Dim 増減 As Long
If (所持金 Mod 3) = 0 Then
If Rnd() < 0.01 Then
増減 = -1 '1%減
Else
増減 = 1 '99%増
End If
ElseIf (所持金 Mod 3) <> 0 Then
If Rnd() < 0.85 Then
増減 = -1 '85%減
Else
増減 = 1 '15%増
End If
End If
逆GameB増減 = 増減
End Function
'◆◆◆
Function 逆GameA増減()
Dim 増減 As Long
If Rnd() < 0.52 Then
増減 = 1 '52%増
Else
増減 = -1 '48%減
End If
逆GameA増減 = 増減
End Function