【发布时间】:2017-06-27 00:18:26
【问题描述】:
我正在尝试创建computer guess game,其中我认为1-100 和计算机之间的数字在1-100 之间生成随机数,并且用户给出生成的数字太低或太高或正确猜测的响应。EG 计算机生成数字23 如果我输入L 那么下次它会生成介于1 t0 23 之间的数字。如果下次它显示10 然后我按H 那么它将生成介于10 和23 之间的数字希望你明白我的意思我正在尝试做。H 也是如此。
谢谢
这是我尝试的代码
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
'Declare Variables
Dim strGuess As Char
Dim random As New Random
Dim answer As Integer
Dim low As Integer
Dim high As Integer
Line1:
MessageBox.Show("You pick a number between 0 and 100 and i will try to guess.Respond")
answer = random.Next(1, 100)
strGuess = InputBox("Is it " & answer, "Number Guessing Game")
' lstGuesses.Items.Add(strGuess)'
low = answer
Line2:
If (CChar(strGuess) = CChar("L")) Then
low = random.Next(1, low)
strGuess = InputBox("Is it " & low, "Number Guessing Game")
End If
GoTo Line2
high = answer
Line7:
If (CChar(strGuess) = CChar("H")) Then
high = random.Next(high, 100)
strGuess = InputBox("Is it " & high, "Number Guessing Game ")
End If
GoTo Line7
End Sub
【问题讨论】:
-
我不了解VB,但想问一下,这段代码有没有循环?我的意思是一旦你按下 H 按钮,算法如何再次回到 Line2 来检查你是否按下 L 按钮?
-
感谢您的回复。我使用
random函数,如果我按H,那么它将在前一个数字和100 之间生成随机数,如果我按L,它将生成介于1 和1 之间的数字前一个数字。我使用 if 语句检查L和H -
关于算法的另一个问题。假设计算机选择 15 但我想要 30。15
-
我认为
1-100和计算机之间的数字猜我的数字,我以L、H和@ 的形式回复计算机生成的数字太低、太高或正确987654337@ 示例:如果选择数字,请记住40 并且计算机显示is it 20然后我输入输入框L表示太低然后计算机将生成下一个大于20的数字下次如果计算机显示45 那么我把H的意思是太高然后计算机生成数字打击 45,希望你理解 -
例如,如果我在脑海中想到 50 个数字。计算机生成 1 到 100 之间的任何数字。如果计算机显示是 60,那么我给出响应输入框
L,然后计算机生成 60 个随机数。接下来如果它显示 40 然后我按H然后我将生成 40-60 之间的数字