用MATLAB模拟双骰子游戏

用MATLAB模拟双骰子游戏,第1张

MATLAB 程序如下,最终收敛到0.508左右

NumIterations = 10000              %实验次数

NumWins = 0                        %已经赢了的次数

NumWinsVec = zeros(1, NumIterations)

for ii = 1:NumIterations

points = sum(randi(6, 1, 2))     %掷2颗骰子,算总数

switch points

case {3, 11}                    %如果是3, 11点

NumWins = NumWins + 1        %赢的次数加1

case {4, 5, 6, 8, 9, 10}        %如果是4,5,6,8,9,10点

flag = false                 %初始化flag,flag==true时本轮结束

while ~flag

newPoints = sum(randi(6, 1, 2)) %掷2颗骰子,算总数

switch newPoints

case 7                     %如果新的点数是7

NumWins = NumWins + 1   %赢的次数加1

flag = true             %本轮结束

case points                %如果新的点数等于本轮第一次的点数

flag = true             %本轮结束(赢的次数不变)

end

end

end

NumWinsVec(ii) = NumWins          %记下本轮结束后总共赢的次数

end

WinPrecentage = NumWinsVec ./ (1:NumIterations) %全部结束后算概率

figure plot(1:NumIterations, WinPrecentage)    %画图

i=size(Y(:,1))

t = 0.001:0.001:0.001*i

x = sin(2*pi*50*t)+sin(2*pi*120*t)

s=x.*(1*Y(:,1))'

plot(x)

参考代码:

>> s=0 for i=1:10, s=s+i^i end, s

s =

  1.0405e+010

我是在命令窗口里面直接写的,如果要保存成脚本文件,只要第一行即可(注意去掉命令提示符)。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/11844023.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存