我知道有很多关于这个主题的帖子,但是我找不到任何能够清楚地解释为什么公式可以按照它的方式运作的帖子。
在Mozilla's page上获取(min,max)中的随机数,我们有
function getRandomIntInclusive(min, max) {
return Math.floor(Math.random() * (max - min + 1)) + min;
}
但我不明白这是怎么回事。如果我以[4,10]为例,
r * (10 - 4) -> [0,6) // r to represent a random number in [0,1)
r * (10 - 4 + 1) -> [0, 7)
(r * (10 - 4 + 1)) + 4 -> [4, 11)
我不知道那应该在[4,10]中给出一个随机数。有人可以解释一下吗?
另外,如何在开放区间(a,b)中获得随机数?