Simulation matlab code: main code.


所有跟贴·加跟贴·新语丝读书论坛

送交者: forfun 于 2009-06-03, 14:50:53:

回答: Dear forfun, could you please give me your code? thanks in advance 由 blobfish 于 2009-06-03, 14:42:40:

totalfloor = 10;
% Number of simulations to do for each case.
N = 1000000;

for skipfloor = 1:totalfloor-1
matchedN = 0;
for i = 1:N
[matched, a, b] = findfloor(totalfloor, skipfloor);
if matched == 1
matchedN = matchedN + 1;
end
end
p = 0;
for i = skipfloor+1:totalfloor
p = p + skipfloor/(i-1)*(1/totalfloor);
end

display(['number of floors to skip: ' num2str(skipfloor) ' number of simulations: ' num2str(n)]);
display(['number of cases in which biggest diamond is found:' num2str(matchedn) '. probability: ' num2str(matchedn/n)]);
display(['theoretical probability: ', num2str(p)]);
display([' ']);

end




所有跟贴:


加跟贴

笔名: 密码: 注册笔名请按这里

标题:

内容: (BBCode使用说明