Membuat Kalkulator dengan VB

Setelah sebelumnya kita telah membuat calculator sederhana dengan VB.net, kali ini kita lanjutkan dengan membuat kalkulator yang lebih rumit. Langsung aja om admin kasih nih source codenya
Public Class Form1
    'mendeklarasi variable a, b, c sebagai 3 variabel yang nantinya akan berfungsi sebagai variabel angka
    Dim a As Double
    Dim b As Double
    Dim c As Double
    'mendeklarasi variabel o sebagai penentu suatu kondisi
    Dim o As String

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'mengkondisikan text Form1 menjadi Calculator" 
        Me.Text = "Calculator"
        'mengkondisikan variabel o pada kondisi awal (Zero)
        o = "Zero"
        'mengkondisikan Textbox1.Text pada kondisi awal dimana isinya adalah 0
        TextBox1.Text = "0"
    End Sub

    'Berikut perintah yang akan dikerjakan untuk button 1 (Tombol angka 1) hingga Button 0(Tombol angka 0)
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        'membuat statement if jika isi variabel o adalah "Zero"
        If o = "Zero" Then
            'mengganti isi textbox1 menjadi 1
            TextBox1.Text = "1"
            'merubah kondisi variabel o dari "Zero" menjadi kosong
            o = ""
            'perintah yang akan dieksekusi bila isi dari variabel o bukan "Zero"
        Else
            'menambahkan isi dari Textbox1 dengan angka 1
            TextBox1.Text = TextBox1.Text + "1"
        End If
    End Sub

    'untuk button2 (tombol angka 2) hingga button9 (tombol angka 9) menggunakan rumus yang sama dengan tombol angka 1
    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        If o = "Zero" Then
            TextBox1.Text = "2"
            o = ""
        Else
            TextBox1.Text = TextBox1.Text + "2"
        End If
    End Sub

    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
        If o = "Zero" Then
            TextBox1.Text = "3"
            o = ""
        Else
            TextBox1.Text = TextBox1.Text + "3"
        End If
    End Sub

    Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
        If o = "Zero" Then
            TextBox1.Text = "4"
            o = ""
        Else
            TextBox1.Text = TextBox1.Text + "4"
        End If
    End Sub

    Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click
        If o = "Zero" Then
            TextBox1.Text = "5"
            o = ""
        Else
            TextBox1.Text = TextBox1.Text + "5"
        End If
    End Sub

    Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click
        If o = "Zero" Then
            TextBox1.Text = "6"
            o = ""
        Else
            TextBox1.Text = TextBox1.Text + "6"
        End If
    End Sub

    Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click
        If o = "Zero" Then
            TextBox1.Text = "7"
            o = ""
        Else
            TextBox1.Text = TextBox1.Text + "7"
        End If
    End Sub

    Private Sub Button8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button8.Click
        If o = "Zero" Then
            TextBox1.Text = "8"
            o = ""
        Else
            TextBox1.Text = TextBox1.Text + "8"
        End If
    End Sub

    Private Sub Button9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button9.Click
        If o = "Zero" Then
            TextBox1.Text = "9"
            o = ""
        Else
            TextBox1.Text = TextBox1.Text + "9"
        End If
    End Sub

    Private Sub Button0_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button0.Click
        'Tidak seperti variabel lainnya, pada Button0 jika variabel o masih bernilai "Zero", maka isi pada Textbox1.Text tetap 0 dan tidak bertambah
        If o = "Zero" Then
            TextBox1.Text = "0"
            'menjalankan kondisi sebaliknya
        Else
            TextBox1.Text = TextBox1.Text + "0"
        End If
    End Sub

    'perintah yang akan dikerjakan pada tombol Koma ","
    Private Sub Button11_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonCom.Click
        'menambahkan symbol titik/koma dibelakang angka sebelumnya
        TextBox1.Text = TextBox1.Text + "."
        'merubah kondisi variabel o menjadi kosong jika isi variabel o = "Zero"
        If o = "Zero" Then
            o = ""
        End If
    End Sub

    Private Sub ButtonClear_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonClear.Click
        'bila tombol C di klik, kalkulator kembali ke kondisi awal
        o = "Zero"
        TextBox1.Text = "0"
    End Sub

    'Berikut perintah yang akan dikerjakan untuk buttonTambah (Tombol Penambahan "+") hingga ButtonBagi(Tombol Pembagian "/")
    Private Sub ButtonTambah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonTambah.Click
        'mengisi variabel a dengan isi dari Textbox1.Text
        a = TextBox1.Text
        'merubah kondisi variabel o menjadi "Tambah"
        o = "Tambah"
        'mengkosongkan isi Textbox1.Text
        TextBox1.Text = ""
    End Sub

    'Untuk tombol kurang hingga bagi berlaku hal yang sama namun kondisi pada variabel o saja yang berbeda
    Private Sub ButtonKurang_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonKurang.Click
        a = TextBox1.Text
        o = "Kurang"
        TextBox1.Text = ""
    End Sub

    Private Sub ButtonKali_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonKali.Click
        a = TextBox1.Text
        o = "Kali"
        TextBox1.Text = ""
    End Sub

    Private Sub ButtonBagi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonBagi.Click
        a = TextBox1.Text
        o = "Bagi"
        TextBox1.Text = ""
    End Sub

    'pada ButtonHasil (Tombol =) variabel a, b, dan c akan diproses sesuai kondisi pada variabel o, dan nantinya hasilnya akan ditampilkan pada Textbox1.Text
    Private Sub ButtonHasil_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonHasil.Click
        'mengambil isi untuk variabel b dari isi Textbox1.Text
        b = TextBox1.Text

        'Perintah yang akan dikerjakan bila isi variabel o = "Tambah"
        If o = "Tambah" Then
            c = a + b
            TextBox1.Text = c
            o = ""

            'Perintah yang akan dikerjakan bila isi variabel o = "Kurang"
        ElseIf o = "Kurang" Then
            c = a - b
            TextBox1.Text = c
            o = ""

            'Perintah yang akan dikerjakan bila isi variabel o = "Kali"
        ElseIf o = "Kali" Then
            c = a * b
            TextBox1.Text = c
            o = ""


            'Perintah yang akan dikerjakan bila isi variabel o = "Bagi"
        ElseIf o = "Bagi" Then
            c = a / b
            'Perintah yang akan dikerjakan bila isi variabel b adalah nol (0)
            If b = 0 Then
                TextBox1.Text = "Cannot divide by zero"
                'perintah yang akan dikerjakan bila berlaku hal sebaliknya
            Else
                TextBox1.Text = c
            End If
            o = ""
        End If
    End Sub

    'Perintah untuk tombol Backspace "<-"
    Private Sub ButtonBs_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonBs.Click
        'mengecek jika isi variabel o bukan "Zero"
        If Not o = "Zero" Then
            'mengecek jika isi variabel o tidak kosong
            If Not TextBox1.Text = "" Then
                'perintah yang dikerjakan
                'menghapus isi dari Textbox1.Text dari kanan satu demi satu
                TextBox1.Text = Microsoft.VisualBasic.Left(TextBox1.Text, Len(TextBox1.Text) - 1)
                'mengecek apabila isi dari Textbox1.Text sudah habis/bernilai nol
                If Len(TextBox1.Text) = 0 Then
                    'perintah yang dikerjakan
                    'mengisi Textbox1.Text dengan angka nol
                    TextBox1.Text = "0"
                    'mengisi variabel b dengan nol jika isi dari o adalah "Tambah" "Kurang" "Kali" "Bagi"
                    If o = "Tambah" Then
                        b = 0
                    End If
                    If o = "Kurang" Then
                        b = 0
                    End If
                    If o = "Kali" Then
                        b = 0
                    End If
                    If o = "Bagi" Then
                        b = 0
                    End If
                End If
            End If
        End If
    End Sub
End Class


Posting Komentar