试图将一个数字添加到游戏中作为计算机科学项目的一部分,并且我目前使用的代码在不同的文本框中显示相同的数字。我想在两个不同的框中显示两个不同的随机数,谢谢。
Dim rn As Random
Dim number As Integer
rn = New Random
number = rn.Next(1, 9)
Dim rn2 As Random
Dim number1 As Integer
rn2 = New Random
number1 = rn2.Next(1, 9)
tbxOne.Text = number.ToString
tbxTwo.Text = number1.ToString
End Sub
答案 0 :(得分:0)
您正在同时创建两个Random实例。这些数字并非真正随机;他们的种子是时间依赖的,所以你的两个Randoms将拥有相同的种子。您应该使用 one Random并在每次需要新值时使用其Next函数。
Dim rn As New Random
Dim number As Integer = rn.Next(1, 9)
Dim number1 As Integer = number
Do until number1 <> number
number1 = rn.Next(1, 9)
Loop
tbxOne.Text = number.ToString
tbxTwo.Text = number1.ToString
可能有一个更优雅的解决方案来确保唯一的数字,但循环可能会满足您的需求。
答案 1 :(得分:0)
您可以使用1个实例创建随机数。此外,您的随机数可以不同或相同。
Dim rn As Random
Dim number As Integer
Dim number1 As Integer
rn = New Random
number = rn.Next(1, 9)
number1 = rn.Next(1, 9)
tbxOne.Text = number.ToString
tbxTwo.Text = number1.ToString