如何找到一系列随机数的频率?

时间:2014-11-06 20:00:33

标签: c++ random numbers generator frequency

我是c ++的初学者,我试图从100个数字的随机数生成器中找到数字(1-6)的频率。我可以使用的唯一命令是rand,srand,cin,cout,loops,以及if else。是否可以使用这些命令创建显示频率的程序?谢谢。

2 个答案:

答案 0 :(得分:0)

您可以使用std::map<int, int> first为随机数,second为计数。

因此,频率将是计数/总数。

答案 1 :(得分:0)

考虑给你的每个命令的功能:

srand(int):种子随机数生成器;你可以给这个简单的数字(比如说0或1或7),这样你每次运行你的代码时,你的随机数生成器都会有相同的输出(很适合检查你的进度。很难说你是否会去如果你每次都得到不同的输入,那就是正确的方向)

rand():为您生成0到RAND_MAX之间的随机数。要生成特定范围内的数字,请查看此主题(How does modulus and rand() work?)。

cin:读取用户的输入。

cout:输出到控制台(例如cout&lt;&lt;“string”;将“word”输出到控制台)

循环:你和你的两个主循环。虽然循环仅在满足某个条件时才会出现; for循环允许您创建临时变量,检查条件并增加变量。提示:当您确切知道要运行的迭代次数时,for循环会更好。

if / else:允许您检查给定条件,如果该条件结果为真,则执行一个代码块;如果为false,则执行另一个代码块(来自else)。请注意,你也可以建立else if(即if(condition){// code} else if(condition){// code})。

现在回顾这个问题,我们需要解决这个问题? 1.一种生成随机数的方法(rand) 2.一种控制我们生成的数量的方法(循环) 3.检查我们生成的数字是否为特定数字的方法(if / else) 4.存储每个数字的频率量的方法(变量) 5.一种将我们的发现输出到屏幕(cout)的方法

我希望我没有放弃太多 - 从这里开始,你需要在整个程序中形成逻辑的确切规范(即,要定义哪些变量,如何执行循环,if / else是什么使用,以及如何和输出什么)。