Vb.net Visual Basic-计算器II编码难题
这是我在《计算机科学I》[Visual Basic 2010]中发布的作业 目标: 如果尝试除以0,请修改CalculatorII案例研究以显示“错误”。“如果为单个数字输入了多个小数点,则还应显示错误 当我除以零或添加更多的小数点时,无法显示错误消息。以下是我在编码中的内容:Vb.net Visual Basic-计算器II编码难题,vb.net,visual-studio-2010,Vb.net,Visual Studio 2010,这是我在《计算机科学I》[Visual Basic 2010]中发布的作业 目标: 如果尝试除以0,请修改CalculatorII案例研究以显示“错误”。“如果为单个数字输入了多个小数点,则还应显示错误 当我除以零或添加更多的小数点时,无法显示错误消息。以下是我在编码中的内容: Public Class Form1 Dim operand1 As Double = 0 Dim operand2 As Double = 0 Dim op As String = Nothing Dim newOpe
Public Class Form1
Dim operand1 As Double = 0
Dim operand2 As Double = 0
Dim op As String = Nothing
Dim newOperand As Boolean = True
Private Sub Number_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles _
btnDot.Click, btn0.Click, btn1.Click, btn2.Click, btn3.Click, btn4.Click, btn5.Click, _
btn6.Click, btn7.Click, btn8.Click, btn9.Click
Dim btnNumberClicked As Button = sender
If newOperand Then
Me.txtDisplay.Text = btnNumberClicked.Tag
newOperand = False
Else
Me.txtDisplay.Text &= btnNumberClicked.Tag
End If
End Sub
Private Sub btnClear_Click(ByVal sender As Object, ByVal e As System.EventArgs) _
Handles btnClear.Click
Me.txtDisplay.Text = "0"
operand1 = 0
operand2 = 0
newOperand = True
op = Nothing
End Sub
Private Sub btnOff_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles _
btnOff.Click
Application.Exit()
End Sub
Private Sub btnOperator_Click(ByVal sender As Object, ByVal e As System.EventArgs) _
Handles btnPlus.Click, btnMinus.Click, btnTimes.Click, btnDivide.Click, btnEqual.Click, btnIntDivide.Click
Dim operatorSelected As Button = sender
If (operand1 = 0 And op = Nothing) Or op = "=" Then
operand1 = Val(Me.txtDisplay.Text)
ElseIf (operand1 = 0 And op = "/") Then
MessageBox.Show("ERROR")
Else
operand2 = Val(Me.txtDisplay.Text)
operand1 = Calculate(operand1, operand2, op)
Me.txtDisplay.Text = operand1
End If
op = operatorSelected.Tag
newOperand = True
End Sub
Function Calculate(ByVal firstOperand As Double, ByVal secondOperand As Double, _
ByVal op As String) As Double
Select Case op
Case "+"
Return (firstOperand + secondOperand)
Case "-"
Return (firstOperand - secondOperand)
Case "X"
Return (firstOperand * secondOperand)
Case "/"
Return (firstOperand / secondOperand)
Case "\"
End Select
End Function
End Class
在此处输入code
操作数2必须是错误字段,您只需检查第一个操作数是否为0
改变
“ElseIf(操作数1=0且op=“/”)然后
到ElseIf(操作数2=0且op=“/”),然后
试试看:)谢谢,它成功了。仍然停留在双“.”错误字段上。