随机数计算逻辑

时间:2013-12-26 22:47:26

标签: c algorithm random numbers

我在看别人的代码并试图弄清楚他们写的内容背后的逻辑。将以下随机数计算用于什么?

return ( ((rand() % 10000)+1) <= Rate * 100);

Rate此处用于表示某个事件发生时的总体百分比的用户指定值。

2 个答案:

答案 0 :(得分:2)

生成1到10000之间的随机整数。至于与Rate*100的比较,可以说你没有说明这意味着什么。

答案 1 :(得分:2)

表达式的左侧部分返回1到10,000之间的随机数(由于+ 1;否则它将在0到9,999之间)。

然后可以使用

Rate来确定表达式为true的有效机会。 Rate越高,返回true的机会就越高。

由于Rate乘以100,您可以确定Rate使用0到100(基本上是百分比),Rate = 0从不Rate = 100始终返回{ {1}}。