VB.NET如何使用随机生成的数字不从textBoxResult的较小数字中减去较大的数字

VB.NET如何使用随机生成的数字不从textBoxResult的较小数字中减去较大的数字,vb.net,Vb.net,好的,那么当我选中或取消选中时,如何执行显示摘要部分? 由于某种原因,我的车坏了。我遗漏了什么吗?我必须给学生控制信息显示的能力 公共课数学实践 Private Sub rbAddition_CheckedChanged(sender As Object, e As EventArgs) Handles rbAddition.CheckedChanged 'Change the label to plus lblPlus.Text = " + " End Sub Private

好的,那么当我选中或取消选中时,如何执行显示摘要部分? 由于某种原因,我的车坏了。我遗漏了什么吗?我必须给学生控制信息显示的能力

公共课数学实践

Private Sub rbAddition_CheckedChanged(sender As Object, e As EventArgs) Handles rbAddition.CheckedChanged
    'Change the label to plus
    lblPlus.Text = " + "
End Sub

Private Sub rbSubtraction_CheckedChanged(sender As Object, e As EventArgs) Handles rbSubtraction.CheckedChanged
    'Change the label to minus        
    lblPlus.Text = "-"
    Dim intlbl1 As Integer = Val(lbl1.Text)
    Dim intlbl2 As Integer = Val(lbl2.Text)
    If rbSubtraction.Checked Then
        Do While intlbl1 < intlbl2
            If rbGrade1.Checked Then
                intlbl1 = Random.Next(1, 10)
            ElseIf rbGrade2.Checked Then
                intlbl1 = Random.Next(10, 99)
            End If
        Loop
        lbl1.Text = intlbl1.ToString
    End If
End Sub

Private Sub rbGrade1_CheckedChanged(sender As Object, e As EventArgs) Handles rbGrade1.CheckedChanged
    Dim random As New Random()
    'Get random numbers between 1 and 10.
    If rbGrade1.Checked Then
        lbl1.Text = random.Next(1, 10).ToString
        lbl2.Text = random.Next(1, 10).ToString
    End If
End Sub

Private Sub rbGrade2_CheckedChanged(sender As Object, e As EventArgs) Handles rbGrade2.CheckedChanged
    Dim random As New Random()
    random.Next(10, 99)
    'Get random numbers between 10 and 99.
    If rbGrade2.Checked Then
        lbl1.Text = random.Next(10, 99).ToString
        lbl2.Text = random.Next(10, 99).ToString
    End If
End Sub

Private Sub btnCheckAnswer_Click(sender As Object, e As EventArgs) Handles btnCheckAnswer.Click
    'Check the answer whether it is right or wrong
    'Display a message box showing right or wrong
    Dim intlbl1 As Integer = Val(lbl1.Text)
    Dim intlbl2 As Integer = Val(lbl2.Text)
    Dim intResult As Integer = Val(txtBoxResult.Text)
    Dim btnCheckAnswer As String
    Select Case lblPlus.Text
        Case "+"
            If intResult = intlbl1 + intlbl2 Then
                btnCheckAnswer = "Correct."
            Else
                btnCheckAnswer = "Sorry. Try Again."
            End If
        Case "-"
            If intResult = intlbl1 - intlbl2 Then
                btnCheckAnswer = "Correct."
            Else
                btnCheckAnswer = "Sorry. Try Again."
            End If
    End Select
End Sub

Private Sub chkBoxDisplaySummary_CheckedChanged(sender As Object, e As EventArgs) Handles chkBoxDisplaySummary.CheckedChanged
    'Display or hide information      
    If chkBoxDisplaySummary.Checked Then
        GroupBox2.Visible = True
    Else
        GroupBox2.Visible = False
    End If
End Sub

Private Sub btnClose_Click(sender As Object, e As EventArgs) Handles btnExit.Click
    Me.Close()
End Sub
Private Sub rbAddition\u CheckedChanged(发送方作为对象,e作为事件参数)处理rbAddition.CheckedChanged
'将标签更改为加号
lblPlus.Text=“+”
端接头
私有子RBDesculation_CheckedChanged(发送方作为对象,e作为事件参数)处理RBDesculation.CheckedChanged
'将标签更改为负
lblPlus.Text=“-”
Dim intlbl1为整数=Val(lbl1.Text)
Dim intlbl2作为整数=Val(lbl2.Text)
如果是RB减法,则选中
在intlbl1

End Class

您可以提示用户计算两个数字之间的差值(无符号(+/-)。然后可以使用
Math.Abs()进行计算

if cint(lbl1.Text)>=cint(lbl2.Text) then
 intResult = cint(lbl1.Text)-cint(lbl2.Text) 
else
intResult = cint(lbl2.Text)-cint(lbl1.Text)
end if

好的。。这应该可以。。当然,如果lbl2中的数字是可能的随机数(10或99)中的最大值,那么lbl1永远不会更大,因此我编写的代码可能会导致lbl1和lbl2都是10或99。不管怎样,这是密码

好的,我在我的电脑上重新创建了这个应用程序-原始代码中有一些错误,尽管乍一看它看起来还行,但还是会出错-例如,在开始时,当你给lbl分配一个“+”时,两边都有一个空格,但在检查答案逻辑中没有空格。此外,当一个名为“option explicit”的visual studio opton打开时,字符串上的cint也不起作用-打开它可以鼓励更好的编程:)也因为这个“option explicit,你会看到我添加了”。ToString也在一些地方

好的,这就是我得到的-我想你的两组单选按钮在两个单独的分组框中,否则代码永远不会工作:)

看看下面的代码,并将其与原始代码并排进行比较。希望这有帮助。如果有,请不要忘记加号:-)

Private Sub rbAddition\u CheckedChanged(发送方作为对象,e作为事件参数)处理rbAddition.CheckedChanged
lblPlus.Text=“+”
端接头
私有子RBDesculation_CheckedChanged(发送方作为对象,e作为事件参数)处理RBDesculation.CheckedChanged
lblPlus.Text=“-”
Dim intlbl1为整数=Val(lbl1.Text)
Dim intlbl2作为整数=Val(lbl2.Text)
如果是RB减法,则选中
在intlbl1intResult = Math.Abs(Val(lbl1.Text)-Val(lbl2.Text))
Private Sub rbAddition_CheckedChanged(sender As Object, e As EventArgs) Handles rbAddition.CheckedChanged
    lblPlus.Text = "+"
End Sub

Private Sub rbSubtraction_CheckedChanged(sender As Object, e As EventArgs) Handles rbSubtraction.CheckedChanged
    lblPlus.Text = "-"
    Dim intlbl1 As Integer = Val(lbl1.Text)
    Dim intlbl2 As Integer = Val(lbl2.Text)
    If rbSubtraction.Checked Then
        Do While intlbl1 < intlbl2
            If rbGrade1.Checked Then
                intlbl1 = random.Next(1, 10)
            ElseIf rbGrade2.Checked Then
                intlbl1 = random.Next(10, 99)
            End If
        Loop
        lbl1.Text = intlbl1.ToString
    End If
End Sub

Private Sub rbGrade1_CheckedChanged(sender As Object, e As EventArgs) Handles rbGrade1.CheckedChanged
    Dim random As New Random()
    'Get random numbers between 1 and 10.
    If rbGrade1.Checked Then
        lbl1.Text = random.Next(1, 10).ToString
        lbl2.Text = random.Next(1, 10).ToString
    End If
End Sub

Private Sub rbGrade2_CheckedChanged(sender As Object, e As EventArgs) Handles rbGrade2.CheckedChanged
    Dim random As New Random()
    random.Next(10, 99)
    'Get random numbers between 10 and 99.
    If rbGrade2.Checked Then
        lbl1.Text = random.Next(10, 99).ToString
        lbl2.Text = random.Next(10, 99).ToString
    End If
End Sub

Private Sub btnCheckAnswer_Click(sender As Object, e As EventArgs) Handles btnCheckAnswer.Click
    Dim intlbl1 As Integer = Val(lbl1.Text)
    Dim intlbl2 As Integer = Val(lbl2.Text)
    Dim intResult As Integer = Val(txtboxResult.Text)
    Dim isTheAnswerCorrect As String
    Select Case lblPlus.Text
        Case "+"
            If intResult = intlbl1 + intlbl2 Then
                isTheAnswerCorrect = "Correct!"
            Else
                isTheAnswerCorrect = "Sorry. Try Again"
            End If
        Case "-"
            If intResult = intlbl1 - intlbl2 Then
                isTheAnswerCorrect = "Correct!"
            Else
                isTheAnswerCorrect = "Sorry. Try Again"
            End If
    End Select
    MsgBox(isTheAnswerCorrect)
End Sub

Private Sub btnClose_Click(sender As Object, e As EventArgs) Handles btnExit.Click
    Me.Close()
End Sub