概率论课堂小作业
要求用matab模拟生日悖论
条件:30人||100次
本来想白嫖网上的解答
结果竟然找不到用matlab模拟仿真的
所幸不难
自己动手,也为后人铺路。
话不多说,直接上代码

clc
clear
m=100; %仿真次数
N=30;%学生人数
for j = 1:m
    B = zeros(365);
    for i=1:N
        A(i)=unidrnd(365);%生日的365B(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是让画面更美观
否则点在边框上 ,比较难看
下面是效果图
在这里插入图片描述

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐