c_cpp 【随机化算法】随机数【7.1】
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c_cpp 【随机化算法】随机数【7.1】相关的知识,希望对你有一定的参考价值。
//随机数类抛硬币实验测试
#include "stdafx.h"
#include "RandomNumber.h"
#include <iostream>
using namespace std;
int TossCoins(int numberCoins);
int main()
{
//模拟随机抛硬币事件
const int NCOINS = 10;
const long NTOSSES = 50000L;
//heads[i]是得到i次正面的次数
long i,heads[NCOINS+1];
int j,position;
//初始化数组heads
for(int j=0; j<NCOINS+1;j++)
{
heads[j] = 0;
}
//重复50,000次模拟事件
for(int i=0; i<NTOSSES; i++)
{
heads[TossCoins(NCOINS)]++;
}
//输出频率图
for(int i=0; i<=NCOINS; i++)
{
position = int(float(heads[i])/NTOSSES*72);
cout<<i<<" ";
for(int j=0; j<position-1; j++)
{
cout<<" ";
}
cout<<"*"<<endl;
}
return 0;
}
int TossCoins(int numberCoins)
{
//随机抛硬币
static RandomNumber coinToss;
int i,tosses = 0;
for(int i=0; i<numberCoins; i++)
{
//Random(2) = 1表示正面
tosses += coinToss.Random(2);
}
return tosses;
}
以上是关于c_cpp 【随机化算法】随机数【7.1】的主要内容,如果未能解决你的问题,请参考以下文章
c_cpp 【随机化算法】计算π值【7.2.1】
c_cpp 【随机化算法】跳跃表【7.3.3】舍伍德(舍伍德)算法
c_cpp 【随机化算法】线性时间选择算法【7.3.1】舍伍德(舍伍德)算法
c_cpp 【随机化算法】素数测试【7.5.3】蒙特卡罗(Monte Carlo)算法
c_cpp 【随机化算法】搜索有序表【7.3.2】舍伍德(舍伍德)算法
c_cpp 【随机化算法】解非线性方程组【7.2.3】