如何用一种所需概率生成随机数?

时间:2012-01-03 18:18:49

标签: algorithm random

在我的游戏中,用户应该能够指定一个或多个随机场景应该显示为两个整数A_xB_x的概率。比方说,当A_x = 3B_x = 6一个场景B一般应该比场景A频繁出现2次。

是否有任何读取使用公式?你能指点我一下吗?

我的第一个想象的想法是smth。比如保存先前生成的场景ID并相应地计算概率标准A_xB_x;但它看起来很傻。

1 个答案:

答案 0 :(得分:3)

只有两种选择,你可以计算A的概率为A_x /(A_x + B_x)= 1/3。如果你有一个随机数生成器,通过rr.nextDouble()之类的调用返回在0和1之间均匀分布的数字,那么类似下面的内容应该可以工作。

if (rr.nextDouble() <= probA)
{
   show A
}
else
{
  show B
}

如果随机数生成器生成某些&lt; = probA,则会生成A,这应该发生概率probA。