我正在尝试在我的班级中使用VB2010制作一个计算器,我正在构建一个函数程序,它是数学的一部分。我使用带有char的Select Case
语句,在进行数学7 + 7
时我得到的只是0,这是不正确的。我不知道在哪里修理。我正在使用前面变暗的数组,我同时调用函数和实际函数。是否与我的阵列有关,我收到的数据不好?
Private Sub EqualsButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles EqualsButton.Click
If CalculatorRichTextBox.Text <> Nothing Then
NumberArray(CountNumber) = Double.Parse(CalculatorRichTextBox.Text)
NumberArray(CountNumber + 1) = DoMathProcedure(NumberArray(CountNumber - 1), MathArray(CountMath), NumberArray(CountNumber))
CountNumber += 1
CalculatorRichTextBox.Text = NumberArray(CountNumber).ToString
End If
End Sub
Private Function DoMathProcedure(ByVal MathNumber1 As Double, ByVal MathSymbol As Char, ByVal MathNumber2 As Double) As Double
Dim Answer As Double
Select Case MathSymbol
Case "+"
Answer = MathNumber1 + MathNumber2
Case "-"
Answer = MathNumber1 - MathNumber2
Case "X"
Answer = MathNumber1 * MathNumber2
Case "/"
Answer = MathNumber1 / MathNumber2
End Select
Return Answer
End Function
Private Sub PlusButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PlusButton.Click
'add try for not just decimal
If CalculatorRichTextBox.Text <> Nothing Then
NumberArray(CountNumber) = Double.Parse(CalculatorRichTextBox.Text)
CalculatorRichTextBox.Clear()
MathArray(CountMath) = "+"
CountMath += 1
CountNumber += 1
Else
CalculatorRichTextBox.Text = "ERROR"
ErrorBoolan = True
End If
End Sub