VB.NET实现计算器

来源:互联网 发布:点餐收银软件 编辑:程序博客网 时间:2024/06/05 21:13
 

 

Dim bolDot As Boolean

    Dim dblACC1, dblACC2 As Double

    Dim dblACC3 As Double = 10

    Dim strOp As String

    Private Sub add_num(ByVal intNumber As Integer)

        If bolDot Then

            dblACC1 = dblACC1 + intNumber / dblACC3

            dblACC3 *= 10

        Else

            dblACC1 = dblACC1 * 10 + intNumber

        End If

        txtResult.text = CStr(dblACC1)

 

    End Sub

    Private Sub action(ByVal strCurrentop As String)

        Select Case strOp

            Case Is = "+"

                dblACC2 = dblACC2 + dblACC1

                dblACC1 = 0

            Case Is = "-"

                dblACC2 = dblACC2 - dblACC1

            Case Is = "*"

                dblACC2 = dblACC2 * dblACC1

                dblACC1 = 0

            Case Is = "/"

                dblACC2 = dblACC2 / dblACC1

                dblACC1 = 0

            Case Is = "="

            Case Else

                dblACC2 = dblACC1

                dblACC1 = 0

        End Select

        strOp = strCurrentop

        txtResult.Text = dblACC2

        bolDot = False

        dblACC3 = 10

End Sub

Private Sub btn0_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn0.Click

        Call add_num(0)

    End Sub

 

    Private Sub btn1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn1.Click

        Call add_num(1)

    End Sub

 

    Private Sub btn2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn2.Click

        Call add_num(2)

    End Sub

 

    Private Sub btn3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn3.Click

        Call add_num(3)

    End Sub

 

    Private Sub btn4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn4.Click

        Call add_num(4)

    End Sub

 

    Private Sub btn5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn5.Click

        Call add_num(5)

    End Sub

 

    Private Sub btn6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn6.Click

        Call add_num(6)

    End Sub

 

    Private Sub btn7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn7.Click

        Call add_num(7)

    End Sub

 

    Private Sub btn8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn8.Click

        Call add_num(9)

    End Sub

 

    Private Sub btn9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn9.Click

        Call add_num(9)

    End Sub

 

    Private Sub btndot_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btndot.Click

        bolDot = True

    End Sub

 

    Private Sub btnPlus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnPlus.Click

        Call action("+")

    End Sub

 

    Private Sub btnMinus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnMinus.Click

        Call action("-")

    End Sub

 

    Private Sub btntimes_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btntimes.Click

        Call action("*")

    End Sub

 

    Private Sub btndivide_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btndivide.Click

        Call action("/")

    End Sub

 

    Private Sub btnClear_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClear.Click

        dblACC1 = 0

        dblACC2 = 0

        dblACC3 = 10

        bolDot = False

        strOp = ""

        txtResult.Text = ""

    End Sub

 

    Private Sub btnPi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnPi.Click

        dblACC1 = Math.PI

        dblACC3 = 10

        bolDot = False

        txtResult.Text = dblACC1

 

    End Sub

 

    Private Sub btnSQRt_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSQRt.Click

        dblACC1 = Math.Exp(Math.Log(dblACC1) / 2)

        dblACC3 = 10

        bolDot = False

        txtResult.Text = dblACC1

    End Sub

End Class

 

原创粉丝点击