概率论课堂小作业 要求用matab模拟生日悖论 条件:30人||100次 本来想白嫖网上的解答 结果竟然找不到用matlab模拟仿真的 所幸不难 自己动手,也为后人铺路。 话不多说,直接上代码
代码语言:javascript复制clc
clear
m=100; %仿真次数
N=30;%学生人数
for j = 1:m
B = zeros(365);
for i=1:N
A(i)=unidrnd(365);%生日的365天
B(A(i))= B(A(i)) 1;
if (B(i)>=1)
plot(j,A(i),'*','color',[1 0 0]);
hold on;
else
plot(j,A(i),'*','color',[0.6 0.6 0.6]);
hold on;
end
end
end
xlabel("times");
ylabel("date");
title("Birthday paradox scatter diagram(30 students)");
axis([0,101,0,368]);
对于axis范围的解释: 取101,368是让画面更美观 否则点在边框上 ,比较难看 下面是效果图