我在看别人的代码并试图弄清楚他们写的内容背后的逻辑。将以下随机数计算用于什么?
return ( ((rand() % 10000)+1) <= Rate * 100);
Rate
此处用于表示某个事件发生时的总体百分比的用户指定值。
答案 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}}。