用线性同余法产生随机数及其应用.cpp
来自「线性同余算法产生随机数 及其应用的源码 线性同余算法是产生随机数的最基本也」· C++ 代码 · 共 38 行
CPP
38 行
#include "random.h"
#include <iostream.h>
#include <iomanip.h>
int TossCoins(int numberCoins)
{//随机抛硬币
static RandomNumber coionToss;
int i,tosses=0;
for (i=0;i<numberCoins;i++)
{
tosses+=coionToss.Random(2);//Random(2)=1 表示正面
}
return tosses;
}
void main(void)
{//模拟随机抛硬币事件
const int NCOINS=10;
const long NTOSSES=50000L;
long i,heads[NCOINS+1];//heads[i]得到i次正面的次数
int j,position;
for (j=0;j<NCOINS+1;j++)
{//初始化
heads[j]=0;
}
for (i=0;i<NTOSSES;i++)
{//重复50000次模拟事件
heads[TossCoins(NCOINS)]++;
}
for (i=0;i<=NCOINS;i++)
{//输出频率图
position=int (float(heads[i])/NTOSSES*72);
cout<<setw(6)<<i<<" ";
for (j=0;j<position-1;j++)
{
cout<<" ";
}
cout<<"*"<<endl;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?