如何在VB.NET中制作有偏差的随机数生成器?

时间:2014-06-13 19:11:09

标签: vb.net random

如何在VB.NET中创建有偏差的随机数生成器(RNG)?

我知道我可以通过摆弄Randomize() / Rnd方法的输出来实现它,但有没有内置的方法来做到这一点?

我希望有偏见的RNG给我 a 2或4(虽然使用1或2代替我也可以),平均90%的时间发生2和4平均发生在10%的时间。

2 个答案:

答案 0 :(得分:1)

创建一个随机数生成器以返回1-10中的值,如果随机数生成器的值介于1和9之间,则发送2(如果值为10则发送4)。

你可能想看看这个

http://msdn.microsoft.com/en-us/library/vstudio/ctssatww(v=vs.100).aspx?cs-save-lang=1&cs-lang=vb#code-snippet-2

如果你想出一个面具来生成你的价值

答案 1 :(得分:0)

以下是我认为你可以做的事情。

 Dim numbers() as integer = {2,2,2,2,4,2,2,2,2,2} ' set 10% for 4, 90% for 2
 Dim r as new Random()
 Return numbers(r.Next(0, 10))