想要成为百万富翁计划Vb.net的50/50生命线

时间:2014-11-26 04:13:27

标签: vb.net

我目前正在写一个Who Wants To A Millionaire程序,我似乎无法弄清楚代码中的严重错误。特别是50/50生命线。只要正确答案是选择中的第一个答案,程序就会崩溃。否则,如果正确的答案是2,3或4选择,它可以正常工作。 我真的不知道为什么会这样做,我修复它的努力一直没用。我正在使用一个数组来保持哪个选项是每个答案的正确选择。

correctanswer(i) 
    Dim remove As Integer
        Dim remove1 As Integer
start:
        remove = CStr(Int(Rnd() * 4))
        If remove + 2 = correctanswer(i) + 1 Then
            GoTo start
        End If
start2:
    remove = CStr(Int(Rnd() * 5))
    If remove1 + 2 = correctanswer(i) + 1 Then
        GoTo Start2
    ElseIf remove1 = remove Then
        GoTo Start2
    End If
    Dim r1 As Button
    r1 = Me.Controls("cmdanswer" & remove + 1)
    r1.Enabled = False
    r1.Text = ""
    Dim r2 As Button
    r2 = Me.Controls("cmdanswer" & remove1 + 1)
    r2.Enabled = False
    r2.Text = ""

1 个答案:

答案 0 :(得分:0)

只要remove1 + 2 = correctanswer(i) + 1,就会出现无限循环。它回到start2,然后继续向下到if语句,然后到start2,一遍又一遍。 remove1和correctanswer(i)的值永远不会改变。