【发布时间】:2014-04-30 08:07:15
【问题描述】:
是否可以在 PHP 中生成随机数,例如从 1 到 10,并让它更可能生成较小的数字而不是较大的数字?
【问题讨论】:
-
你需要为你的随机数定义一个分布函数。有了这个函数,你就可以编写你的自定义随机生成器了。
-
没有 rand(1,10) 以相同的概率生成 1 到 10 的数字,我希望它更有可能生成 1,2,3.. 而不是 7,8,9 .
-
或者快速而肮脏的概率转移:
echo (rand(1,12)%10);导致不均匀分布,因为 0 和 1 现在具有更高的概率。 -
来自一个非常古老的问题 - generate random numbers with probabilistic distribution
-
第一条评论给出了问题的正确解决方案,但OP显然不明白。也许他应该更加努力。