【发布时间】:2016-05-28 10:20:27
【问题描述】:
我在我的程序中使用了一个随机数生成器,但是每次我运行程序时它都会返回相同的值 (0.71)。
代码:
number = FormatNumber(Rnd(1), 2)
rdmlabelTxt.Text = number.ToString
有没有办法在启动程序时产生不同的随机数? 谢谢。
【问题讨论】:
-
NET 有一个更容易使用的
Random类...
我在我的程序中使用了一个随机数生成器,但是每次我运行程序时它都会返回相同的值 (0.71)。
代码:
number = FormatNumber(Rnd(1), 2)
rdmlabelTxt.Text = number.ToString
有没有办法在启动程序时产生不同的随机数? 谢谢。
【问题讨论】:
Random 类...
不给参数时根据Microsoft“生成相同的数列”。该文章还建议“在调用 Rnd 之前,使用不带参数的 Randomize 语句来初始化具有基于系统计时器的种子的随机数生成器。”
我认为这将解决您的问题 - 请告诉我们。
【讨论】:
你需要编写一个for循环才能生成不同的数字
For i = 1 to 100
number = FormatNumber(Rnd(1), 2)
Cells(i, "A").Value = number
next i
【讨论】:
你只需要在你的代码之前使用 Randomize() 调用。
Randomize()
Dim number As Double = 0
number = FormatNumber(Rnd(1), 2)
rdmlabelTxt.Text = number.ToString
【讨论】:
Randomize() 在整个程序中只应调用一次。但是你的答案将和马克的一样,所以很遗憾你没有为这篇文章增加任何价值。