jason 发表于 2011-5-12 18:01:52

一个关于输了加倍赌法的模拟程序

没有比这个更有说服力的了。
import random


def bet(win,bid):
      if random.randint(0,100) <= 49:#lose 0 ... 49 ... 99
                win = win - bid
                bid = bid * 2
      else:
                win = win + bid
                bid = 1
      return win,bid

win = 0
bid = 1
random.seed()
for i in range(100000000):
      win,bid = bet(win,bid)
      if win < 0:
                print win,bid

print "You win ",win

赌一亿次,从1开始,输了就加倍。我输出了所有当时是输钱状态的时刻,第一列表示输了多少钱,第二列表示下一次应该下多少注

-1 2
-3 32
-35 64
-86 256
-505 1024
-19162 65536
-84698 131072
-19164 131072
-150236 262144
-412380 524288
-125014 262144
-116539 262144
-713293 4194304
-4907597 8388608
-2415050 8388608
-10803658 16777216
-1156240 8388608
-9544848 16777216
-26322064 33554432
-4367402 33554432

You win50492193

一亿次结束是赢钱了的,5千万。但是中间出现过最高达到2千万的输钱状态,如果想要翻本,需要下注3千万。一亿次的时候恰好是赢钱的,如果继续玩下去还有可能输光。

poshu 发表于 2011-5-12 19:06:29

赌一亿次
一个命题如果条件不合理
那结论无论多么荒谬都是是真
试问 谁能赌一亿次

maper 发表于 2011-5-12 19:10:12

模拟的有问题吧?
以北侠中韦小宝那里的赌大小为例,是一共存在三种状况,除了大、小外还有骰子叠在一起的状况,这样子算系统赢的,玩家的赢率比系统要低一点点,这样采用输了押两倍的方法肯定是玩家输的。
具体记不清了,不过当年我用mush模拟过,后来就绝了那条发财的心了。
现实中好像是点数一样算庄家赢的,所以不管怎么押,多次之后庄家肯定赢钱。

maper 发表于 2011-5-12 19:12:20

总之,珍爱生命,远离赌博。

bluse 发表于 2011-5-12 19:15:50

只要你的本钱充分大,庄家永远肯跟你赌,那么玩到最后你总应该能赢。真的全输光,绝不是输在运气,而是输在本钱不足。

[ 本帖最后由 bluse 于 2011-5-12 07:17 PM 编辑 ]

poshu 发表于 2011-5-12 19:29:51

原帖由 bluse 于 2011-5-12 07:15 PM 发表 http://pkuxkx.com/forum/images/common/back.gif
只要你的本钱充分大,庄家永远肯跟你赌,那么玩到最后你总应该能赢。真的全输光,绝不是输在运气,而是输在本钱不足。
正解。
页: [1]
查看完整版本: 一个关于输了加倍赌法的模拟程序