设计随机数生成器

Nilesh

我正在尝试设计一个随机数生成器,该生成器可以生成0-11的随机数。但是我需要考虑到我已经有一个随机数生成器,可以生成0-5的随机数.0-11的所有数字都应为产生的概率相等。

我通过这个链接

在链接中,使用的方程式为5*foo() + foo() -5其中foo()生成数字1-5(而非0-5)

1. For each value of first foo(), there can be 5 possible combinations for values of second foo(). So, there are total 25 combinations possible.
2. The range of values returned by the above equation is 1 to 25, each integer occurring exactly once.
3. If the value of the equation comes out to be less than 22, return modulo division by 7 followed by adding 1. Else, again call the method recursively. The probability of returning each integer thus becomes 1/7.

现在我可以在上面的链接中定义的函数中更改将其模数乘以12的函数并递归该函数(如果数量超过24)吗?如果不是,那我就不明白什么是错的。

或者我遇到了这个

让我们调用f(6)生成数字0-5的随机数生成器函数

(f(6)+f(6)+f(6))%12;

如果没有什么替代的解决方案可以在做这个task.Maybe我我扣除?我需要帮助的是缺少在这里something.The美中不足的是0-11之间的每个数字应该有generation.Other的相同的概率比f(6)我不能使用任何其他function.Only数学操作。

达里奥

有很多方法可以做到这一点,但在这种情况下,我会去:

f(6) + 6*f(2)

在哪里

f(2) = f(6)%2

该概率是均匀的,因为您有一个均匀的概率获得一个从0到5的数字,并且具有一个均匀的概率将其移到6-11区间。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

C ++随机数生成器

来自分类Dev

随机数生成器android

来自分类Dev

JavaScript随机数生成器

来自分类Dev

最快的随机数生成器

来自分类Dev

随机数生成器-停止

来自分类Dev

用随机数生成器播种随机数生成器池

来自分类Dev

播种多个随机数生成器

来自分类Dev

fortran中的随机数生成器

来自分类Dev

打包(类型擦除)随机数生成器

来自分类Dev

我应该播种随机数生成器吗?

来自分类Dev

Haskell中的伪随机数生成器

来自分类Dev

在Clojure中重新绑定随机数生成器

来自分类Dev

R中的并行随机数生成器

来自分类Dev

Array#sample随机数生成器

来自分类Dev

如何定义全局随机数生成器?

来自分类Dev

NaN附带了Javascript随机数生成器

来自分类Dev

非常简单的随机数生成器编译问题

来自分类Dev

Memento在伪随机数生成器中的用法

来自分类Dev

Sprite Kit中的种子随机数生成器

来自分类Dev

C ++快速正常随机数生成器

来自分类Dev

C / C ++中随机数生成器的实现

来自分类Dev

快速均匀分布随机数生成器

来自分类Dev

Javascript随机数生成器到隐藏字段

来自分类Dev

随机数生成器过于重复某些数字

来自分类Dev

Excel VBA强大的随机数生成器

来自分类Dev

偶数和奇数的随机数生成器

来自分类Dev

C(++)中的Stata随机数生成器

来自分类Dev

numpy中的随机数生成器

来自分类Dev

C:srand不影响随机数生成器