分赌注问题的matlab仿真

概率论的大作业
假设赌徒A和B的胜率相同,即每一局的A和B都有0.5的机会赢得胜利,假设先胜18局的人赢得赌注,并假设在A胜10局且B胜7局的时候中止赌博,用MATLAB模拟中止赌博后的各次赌博情况直至赢得这次赌注,把这样的实验进行10000次以后,试分析A和B赢得赌注次数的比率与理论计算的结果是否相符合?
理论推导戳这来自文库
不过其用python进行仿真
我稍作改写
改成了matlab
效果类似
附上代码

clc
a=0;
b=0;
awin=0;
bwin=0;
for i = 1:10000
    for j = 1:18
        t=unidrnd(2);
        if t==1
            a=a+1;
        else 
            b=b+1;
        end
        if(a==8 || b==11)
            if (a==8)
                awin=awin+1;
            else 
                bwin=bwin+1;
            end
            a=0;
            b=0;
            break;
        end
    end
end
fprintf("A赢的概率为:%f\n",awin/10000)
fprintf("B赢的概率为:%f\n",bwin/10000)

实验结果
分赌注问题的matlab仿真_第1张图片
总结一下,分赌注问题就是根据赢的概率分配

你可能感兴趣的:(matlab,概率论)