用线性同余法产生随机数及其应用.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 + -
显示快捷键?