在MATLAB中提供了一个在[0,1]区间上产生均匀分布的随机函数rand,其命令格式为
命令格式1: rand(N)
功能:返回一个 N × N 的随机矩阵
命令格式2: rand(N,M)
功能:返回一个 N × M 的随机矩阵
命令格式3: rand(P1,P2,…,Pn)
功能:返回一个 P 1 × P 2 ×…× P n 的随机矩阵
可以用计算机模拟掷硬币这一过程,为了模拟硬币出现正面或反面,规定随机数小于0.5时为反面,否则为正面,可以用round()函数将其变成0—1矩阵,然后将整个矩阵的各元素值加起来再除以总的原始个数即为出现正面的概率.round()函数的命令格式为
命令格式: round(x)
功能:对向量或矩阵x的每个分量四舍五入取整.
现以连续掷10000次硬币为例,重复做100次试验模拟出现正面的概率.在MATLAB中的程序如下:
在该程序输出的四项中,a为实验100次中每次出现正面的频率,mx和mn分别为100次实验中出现正面频率的最大值和最小值,ma为100次试验出现正面的平均频率.运行结果如下: