计算器软件Form8代码

Public Class Form8

Dim num1 As String '一个操作数(以 26 进制字符串存储)
Dim num2 As String '二个操作数(以 26 进制字符串存储)
Dim op As Char '算符

Private Function ConvertToDecimal(ByVal num As String) As Integer
    Dim decimalValue As Integer = 0
    Dim power As Integer = num.Length - 1

    For Each digit As Char In num
        Dim digitValue As Integer
        Select Case digit
            Case "0"
                digitValue = 0
            Case "1"
                digitValue = 1
            Case "2"
                digitValue = 2
            Case "3"
                digitValue = 3
            Case "4"
                digitValue = 4
            Case "5"
                digitValue = 5
            Case "6"
                digitValue = 6
            Case "7"
                digitValue = 7
            Case "8"
                digitValue = 8
            Case "9"
                digitValue = 9
            Case "A"
                digitValue = 10
            Case "B"
                digitValue = 11
            Case "C"
                digitValue = 12
            Case "D"
                digitValue = 13
            Case "E"
                digitValue = 14
            Case "F"
                digitValue = 15
            Case "G"
                digitValue = 16
            Case "H"
                digitValue = 17
            Case "I"
                digitValue = 18
            Case "J"
                digitValue = 19
            Case "K"
                digitValue = 20
            Case "L"
                digitValue = 21
            Case "M"
                digitValue = 22
            Case "N"
                digitValue = 23
            Case "O"
                digitValue = 24
            Case "P"
                digitValue = 25
            Case Else
                '处理非法字符
                MessageBox.Show("输入包含非法字符")
                Return -1 '添加返回值以处理非法输入情况
        End Select

        decimalValue += digitValue * (26 ^ power)
        power -= 1
    Next

    Return decimalValue
End Function

Private Function ConvertFromDecimal(ByVal decimalValue As Integer) As String
    Dim result As String = ""

    While decimalValue > 0
        Dim remainder As Integer = decimalValue Mod 26
        Select Case remainder
            Case 0
                result = "0" + result
            Case 1
                result = "1" + result
            Case 2
                result = "2" + result
            Case 3
                result = "3" + result
            Case 4
                result = "4" + result
            Case 5
                result = "5" + result
            Case 6
                result = "6" + result
            Case 7
                result = "7" + result
            Case 8
                result = "8" + result
            Case 9
                result = "9" + result
            Case 10
                result = "A" + result
            Case 11
                result = "B" + result
            Case 12
                result = "C" + result
            Case 13
                result = "D" + result
            Case 14
                result = "E" + result
            Case 15
                result = "F" + result
            Case 16
                result = "G" + result
            Case 17
                result = "H" + result
            Case 18
                result = "I" + result
            Case 19
                result = "J" + result
            Case 20
                result = "K" + result
            Case 21
                result = "L" + result
            Case 22
                result = "M" + result
            Case 23
                result = "N" + result
            Case 24
                result = "O" + result
            Case 25
                result = "P" + result
        End Select

        decimalValue = decimalValue \ 26
    End While

    Return result
End Function




Private Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button1.Click
    '数字 0 添加到文本框中
    TextBox1.Text += sender.text
End Sub

Private Sub Button2_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button2.Click
    '数字 1 添加到文本框中
    TextBox1.Text += sender.text
End Sub

Private Sub Button3_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button3.Click
    '数字 2 添加到文本框中
    TextBox1.Text += sender.text
End Sub

Private Sub Button4_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button4.Click
    '数字 3 添加到文本框中
    TextBox1.Text += sender.text
End Sub

Private Sub Button5_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button5.Click
    '数字 4 添加到文本框中
    TextBox1.Text += sender.text
End Sub

Private Sub Button6_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button6.Click
    '数字 5 添加到文本框中
    TextBox1.Text += sender.text
End Sub

Private Sub Button7_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button7.Click
    '数字 6 添加到文本框中
    TextBox1.Text += sender.text
End Sub

Private Sub Button8_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button8.Click
    '数字 7 添加到文本框中
    TextBox1.Text += sender.text
End Sub

Private Sub Button9_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button9.Click
    '数字 8 添加到文本框中
    TextBox1.Text += sender.text
End Sub

Private Sub Button10_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button10.Click
    '数字 9 添加到文本框中
    TextBox1.Text += sender.text
End Sub

Private Sub Button11_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button11.Click
    '数字 A 添加到文本框中
    TextBox1.Text += sender.text
End Sub

Private Sub Button12_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button12.Click
    '数字 B 添加到文本框中
    TextBox1.Text += sender.text
End Sub

Private Sub Button13_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button13.Click
    '数字 C 添加到文本框中
    TextBox1.Text += sender.text
End Sub

Private Sub Button14_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button14.Click
    '数字 D 添加到文本框中
    TextBox1.Text += sender.text
End Sub

Private Sub Button15_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button15.Click
    '数字 E 添加到文本框中
    TextBox1.Text += sender.text
End Sub

Private Sub Button16_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button16.Click
    '数字 F 添加到文本框中
    TextBox1.Text += sender.text
End Sub

Private Sub Button24_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button24.Click
    '数字 G 添加到文本框中
    TextBox1.Text += sender.text
End Sub

Private Sub Button25_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button25.Click
    '数字 H 添加到文本框中
    TextBox1.Text += sender.text
End Sub

Private Sub Button26_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button26.Click
    '数字 I 添加到文本框中
    TextBox1.Text += sender.text
End Sub

Private Sub Button27_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button27.Click
    '数字 J 添加到文本框中
    TextBox1.Text += sender.text
End Sub

Private Sub Button28_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button28.Click
    '数字 K 添加到文本框中
    TextBox1.Text += sender.text
End Sub

Private Sub Button29_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button29.Click
    '数字 L 添加到文本框中
    TextBox1.Text += sender.text
End Sub

Private Sub Button30_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button30.Click
    '数字 M 添加到文本框中
    TextBox1.Text += sender.text
End Sub

Private Sub Button31_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button31.Click
    '数字 N 添加到文本框中
    TextBox1.Text += sender.text
End Sub

Private Sub Button32_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button32.Click
    '数字 O 添加到文本框中
    TextBox1.Text += sender.text
End Sub
Private Sub Button33_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button33.Click
    '数字 P 添加到文本框中
    TextBox1.Text += sender.text
End Sub


Private Sub Button17_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button17.Click
    '存 + 第一个操作数和运算符,并清空文本框
    num1 = TextBox1.Text
    op = sender.text
    TextBox1.Clear()
End Sub

Private Sub Button18_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button18.Click
    '存 - 第一个操作数和运算符,并清空文本框
    num1 = TextBox1.Text
    op = sender.text
    TextBox1.Clear()
End Sub

Private Sub Button19_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button19.Click
    '存 * 第一个操作数和运算符,并清空文本框
    num1 = TextBox1.Text
    op = sender.text
    TextBox1.Clear()
End Sub

Private Sub Button20_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button20.Click
    '存 / 第一个操作数和运算符,并清空文本框
    num1 = TextBox1.Text
    op = sender.text
    TextBox1.Clear()
End Sub

Private Sub Button21_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button21.Click
    '= 算结果并显示
    num2 = TextBox1.Text

    Dim decimalNum1 As Integer = ConvertToDecimal(num1)
    Dim decimalNum2 As Integer = ConvertToDecimal(num2)

    Dim result As Integer
    Select Case op
        Case "+"
            result = decimalNum1 + decimalNum2
        Case "-"
            result = decimalNum1 - decimalNum2
        Case "*"
            result = decimalNum1 * decimalNum2
        Case "/"
            If decimalNum2 = 0 Then
                MessageBox.Show("除数不能为 0")
                Exit Sub
            End If
            result = decimalNum1 / decimalNum2
    End Select

    TextBox1.Text = ConvertFromDecimal(result)
End Sub

Private Sub Button22_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button22.Click
    '空文本框和操作数
    TextBox1.Clear()
    num1 = ""
    num2 = ""
    op = " "
End Sub

Private Sub Button23_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button23.Click
    '除最后一位字符
    If TextBox1.Text.Length > 0 Then
        TextBox1.Text = TextBox1.Text.Substring(0, TextBox1.Text.Length - 1)
    End If
End Sub

End Class

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

EYYLTV

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值