Jumat, 30 November 2012

program kalkulator scientific



TUTORIAL MEMBUAT KALKULATOR SCIENTIFIC
KELOMPOK 42 TEKNIK INDUSTRI UNDIP 2012


Kami akan memberi tutorial tentang cara membuat kalkulator scientific menggunakan aplikasi Visual Basic 2010. Berikut adalah tampilan dari contoh kalkulator scientific yang kami buat :





masukkan listing berikut :
Listing code untuk Form 1

Public Class Form1
    Dim Angka, Hasil As Double
    Dim firstnumber As Single
    Dim secondnumber As Single
    Dim answernumber As Single
    Dim proses As String
    Dim ArithmeticProcess As String
    Const phi As Double = 22 / 7
Listing code untuk membuat form 1 tidak aktif saat ditampilkan

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Button1.Enabled = False
        Button2.Enabled = False
        Button3.Enabled = False
        Button4.Enabled = False
        Button5.Enabled = False
        Button6.Enabled = False
        Button7.Enabled = False
        Button8.Enabled = False
        Button9.Enabled = False
        Button10.Enabled = False
        Button11.Enabled = False
        Button12.Enabled = False
        Button13.Enabled = False
        Button14.Enabled = False
        Button15.Enabled = False
        Button16.Enabled = False
        Button17.Enabled = False
        Button18.Enabled = False
        Button19.Enabled = False
        Button20.Enabled = False
        Button22.Enabled = False
        Button23.Enabled = False
        Button24.Enabled = False
        Button25.Enabled = False
        Button26.Enabled = False
        Button27.Enabled = False
        Button28.Enabled = False
        Button29.Enabled = False
        Button30.Enabled = False
    End Sub

Listing code untuk menentukan angka

Private Sub Button13_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button13.Click
        If TextBox2.Text = "0" Then
            TextBox1.Text = "1"
            TextBox2.Text = "1"
        Else
            TextBox1.Text = TextBox1.Text & "1"
            TextBox2.Text = TextBox2.Text & "1"
        End If
    End Sub

    Private Sub Button15_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button15.Click
        If TextBox2.Text = "0" Then
            TextBox1.Text = "2"
            TextBox2.Text = "2"
        Else
            TextBox1.Text = TextBox1.Text & "2"
            TextBox2.Text = TextBox2.Text & "2"
        End If
    End Sub

    Private Sub Button14_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button14.Click
        If TextBox2.Text = "0" Then
            TextBox1.Text = "3"
            TextBox2.Text = "3"
        Else
            TextBox1.Text = TextBox1.Text & "3"
            TextBox2.Text = TextBox2.Text & "3"
        End If
    End Sub

    Private Sub Button29_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button29.Click
        If TextBox2.Text = "0" Then
            TextBox1.Text = "4"
            TextBox2.Text = "4"
        Else
            TextBox1.Text = TextBox1.Text & "4"
            TextBox2.Text = TextBox2.Text & "4"
        End If
    End Sub

    Private Sub Button26_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button26.Click
        If TextBox2.Text = "0" Then
            TextBox1.Text = "5"
            TextBox2.Text = "5"
        Else
            TextBox1.Text = TextBox1.Text & "5"
            TextBox2.Text = TextBox2.Text & "5"
        End If
    End Sub

    Private Sub Button19_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button19.Click
        If TextBox2.Text = "0" Then
            TextBox1.Text = "6"
            TextBox2.Text = "6"
        Else
            TextBox1.Text = TextBox1.Text & "6"
            TextBox2.Text = TextBox2.Text & "6"
        End If
    End Sub

    Private Sub Button28_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button28.Click
        If TextBox2.Text = "0" Then
            TextBox1.Text = "7"
            TextBox2.Text = "7"
        Else
            TextBox1.Text = TextBox1.Text & "7"
            TextBox2.Text = TextBox2.Text & "7"
        End If
    End Sub

    Private Sub Button25_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button25.Click
        If TextBox2.Text = "0" Then
            TextBox1.Text = "8"
            TextBox2.Text = "8"
        Else
            TextBox1.Text = TextBox1.Text & "8"
            TextBox2.Text = TextBox2.Text & "8"
        End If
    End Sub

    Private Sub Button22_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button22.Click
        If TextBox2.Text = "0" Then
            TextBox1.Text = "9"
            TextBox2.Text = "9"
        Else
            TextBox1.Text = TextBox1.Text & "9"
            TextBox2.Text = TextBox2.Text & "9"
        End If
    End Sub

    Private Sub Button24_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button24.Click
        If TextBox2.Text = "0" Then
            TextBox1.Text = "0"
            TextBox2.Text = "0"
        Else
            TextBox1.Text = TextBox1.Text & "0"
            TextBox2.Text = TextBox2.Text & "0"
        End If
    End Sub

    Private Sub Button27_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button27.Click
        If TextBox2.Text = "0" Then
            TextBox1.Text = "00"
            TextBox2.Text = "00"
        Else
            TextBox1.Text = TextBox1.Text & "00"
            TextBox2.Text = TextBox2.Text & "00"
        End If
    End Sub
    Private Sub Button23_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button23.Click
        TextBox1.Text = TextBox1.Text & "."
        TextBox2.Text = TextBox2.Text & "."
    End Sub
    Private Sub Button8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button8.Click
        If TextBox1.Text.Length = 0 Then
            TextBox1.Text = TextBox1.Text + CStr("-")
        ElseIf TextBox1.Text <> "." Then
            TextBox1.Text = TextBox1.Text * -1
        End If
    End Sub
  

Listing code untuk menetukan operasi matematika

Private Sub Button16_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button16.Click
        TextBox1.Text = TextBox1.Text & "+"
        If proses <> "" Then
            Select Case proses
                Case "+"
                    Call Tambah()
                Case "-"
                    Call kurang()
                Case "x"
                    Call kali()
                Case "/"
                    Call bagi()

            End Select

        Else
            Call Tambah()

        End If
        proses = "+"
        TextBox2.Text = ""
    End Sub
    Private Sub Tambah()
        If Angka = "0" Then
            Angka = Val(TextBox2.Text)

        Else
            Angka = Angka + Val(TextBox2.Text)

        End If
        proses = "+"
        TextBox2.Text = ""
    End Sub

    Private Sub Button17_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button17.Click
        TextBox1.Text = TextBox1.Text & "-"
        If proses <> "" Then
            Select Case proses
                Case "+"
                    Call Tambah()
                Case "-"
                    Call kurang()
                Case "x"
                    Call kali()
                Case "/"
                    Call bagi()

            End Select
        Else
            Call kurang()

        End If
        proses = "-"
        TextBox2.Text = ""
    End Sub
    Private Sub kurang()
        If Angka = "0" Then
            Angka = Val(TextBox2.Text)

        Else
            Angka = Angka - Val(TextBox2.Text)

        End If
        proses = "-"
        TextBox2.Text = ""
    End Sub

    Private Sub Button18_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button18.Click
        TextBox1.Text = TextBox1.Text & "x"
        If proses <> "" Then
            Select Case proses
                Case "+"
                    Call Tambah()
                Case "-"
                    Call kurang()
                Case "x"
                    Call kali()
                Case "/"
                    Call bagi()

            End Select
        Else
            Call kali()

        End If
        proses = "x"
        TextBox2.Text = ""
    End Sub
    Private Sub kali()

        If Angka = "0" Then
            Angka = Val(TextBox2.Text)

        Else
            Angka = Angka * Val(TextBox2.Text)

        End If
        proses = "x"
        TextBox2.Text = ""
    End Sub

    Private Sub Button20_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button20.Click
        TextBox1.Text = TextBox1.Text & "/"
        If proses <> "" Then
            Select Case proses
                Case "+"
                    Call Tambah()
                Case "-"
                    Call kurang()
                Case "x"
                    Call kali()
                Case "/"
                    Call bagi()

            End Select

        Else
            Call bagi()

        End If
        proses = "/"
        TextBox2.Text = ""
    End Sub
    Private Sub bagi()
        If Angka = "0" Then
            Angka = Val(TextBox2.Text)

        Else
            Angka = Angka / Val(TextBox2.Text)

        End If
        proses = "/"
        TextBox2.Text = ""
    End Sub
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        ArithmeticProcess = "√"
    End Sub

    Private Sub Button12_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button12.Click
        firstnumber = Val(TextBox1.Text)
        TextBox1.Text = TextBox1.Text & "^"
        ArithmeticProcess = "^"
        TextBox2.Text = ""
    End Sub

    Private Sub Button11_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button11.Click
        Angka = Val(TextBox1.Text)
        ArithmeticProcess = "%"
    End Sub

    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
        TextBox2.Text = Math.Sin(TextBox1.Text * (phi / 180))
    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        TextBox2.Text = Math.Cos(TextBox1.Text * (phi / 180))
    End Sub

    Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click
        TextBox2.Text = Math.Tan(TextBox1.Text * (phi / 180))
    End Sub

    Private Sub Button9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button9.Click
        Dim a As Long
        Dim b As Integer
        Dim fac As Integer
        b = a - 1
        If a = 0 Then
            a = Val(TextBox1.Text)
        Else : a = a * (a - 1) * (a - 2) * (a - b)
        End If
        fac = 1
        a = TextBox1.Text

        Dim i As Integer
        For i = a To 1 Step -1
            fac = fac * i
        Next i
        TextBox2.Text = fac

    End Sub

    Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
        Angka = Val(TextBox1.Text)
        TextBox1.Text = TextBox1.Text & "Ï€"
        ArithmeticProcess = "phi"
    End Sub

    Private Sub Button10_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button10.Click
        Angka = Val(TextBox1.Text)
        ArithmeticProcess = "log"
    End Sub

Listing code untuk button samadengan (=)

Private Sub Button30_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button30.Click
        If ArithmeticProcess = "√" Then
            answernumber = TextBox1.Text ^ (1 / 2)
            TextBox2.Text = answernumber
        ElseIf ArithmeticProcess = "phi" Then
            answernumber = Angka * 22 / 7
            TextBox2.Text = answernumber
        ElseIf ArithmeticProcess = "sin" Then
            answernumber = Math.Sin(TextBox1.Text * (phi / 180))
        ElseIf ArithmeticProcess = "cos" Then
            answernumber = Math.Cos(TextBox1.Text * (phi / 180))
        ElseIf ArithmeticProcess = "tan" Then
            answernumber = Math.Tan(TextBox1.Text * (phi / 180))
        ElseIf ArithmeticProcess = "%" Then
            answernumber = Angka * 1 / 100
            TextBox2.Text = answernumber
        ElseIf ArithmeticProcess = "log" Then
            answernumber = Math.Log10(Angka)
            TextBox2.Text = answernumber
        ElseIf ArithmeticProcess = "^" Then
            secondnumber = Val(TextBox2.Text)
            answernumber = firstnumber ^ secondnumber
            TextBox2.Text = answernumber
        End If

        If proses = "+" Then
            Hasil = Angka + Val(TextBox2.Text)
            TextBox2.Text = Hasil
        ElseIf proses = "-" Then
            Hasil = Angka - Val(TextBox2.Text)
            TextBox2.Text = Hasil
        ElseIf proses = "x" Then
            Hasil = Angka * Val(TextBox2.Text)
            TextBox2.Text = Hasil
        ElseIf proses = "/" Then
            Hasil = Angka / Val(TextBox2.Text)
            TextBox2.Text = Hasil

        End If
        proses = ""
        Angka = 0
    End Sub

Listing code untuk menghapus teks (hanya satu angka)

Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click
        If TextBox1.Text.Length <> 0 Then
            TextBox1.Text = TextBox1.Text.Remove(TextBox1.Text.Length - 1)
            TextBox2.Text = TextBox2.Text.Remove(TextBox2.Text.Length - 1)

        End If
    End Sub

Listing code untuk menghapus semua teks yang ditampilkan

Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click
        TextBox1.Text = ""
        TextBox2.Text = ""
    End Sub

Listing code untuk membuat form 1 aktif

Private Sub Button32_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button32.Click
        Button1.Enabled = True
        Button2.Enabled = True
        Button3.Enabled = True
        Button4.Enabled = True
        Button5.Enabled = True
        Button6.Enabled = True
        Button7.Enabled = True
        Button8.Enabled = True
        Button9.Enabled = True
        Button10.Enabled = True
        Button11.Enabled = True
        Button12.Enabled = True
        Button13.Enabled = True
        Button14.Enabled = True
        Button15.Enabled = True
        Button16.Enabled = True
        Button17.Enabled = True
        Button18.Enabled = True
        Button19.Enabled = True
        Button20.Enabled = True
        Button22.Enabled = True
        Button23.Enabled = True
        Button24.Enabled = True
        Button25.Enabled = True
        Button26.Enabled = True
        Button27.Enabled = True
        Button28.Enabled = True
        Button29.Enabled = True
        Button30.Enabled = True
    End Sub

Lising code untuk membuat form 1 tidak aktif

    Private Sub Button31_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button31.Click
        Button1.Enabled = False
        Button2.Enabled = False
        Button3.Enabled = False
        Button4.Enabled = False
        Button5.Enabled = False
        Button6.Enabled = False
        Button7.Enabled = False
        Button8.Enabled = False
        Button9.Enabled = False
        Button10.Enabled = False
        Button11.Enabled = False
        Button12.Enabled = False
        Button13.Enabled = False
        Button14.Enabled = False
        Button15.Enabled = False
        Button16.Enabled = False
        Button17.Enabled = False
        Button18.Enabled = False
        Button19.Enabled = False
        Button20.Enabled = False
        Button22.Enabled = False
        Button23.Enabled = False
        Button24.Enabled = False
        Button25.Enabled = False
        Button26.Enabled = False
        Button27.Enabled = False
        Button28.Enabled = False
        Button29.Enabled = False
        Button30.Enabled = False
    End Sub

                                                                                                                                         
Setelah itu, tekan tombol F5 untuk debugging atau menamp

Komponen toolbox yang kami gunakan :


KOMPONEN
PROPERTIES
KETERANGAN
Form 1
Name
Text
Form 1
Kalkulator
TextBox 1
Name
Text
TextBox1

TextBox 2
Name
Text
TextAlign
TextBox2

Right
Button 13
Name
Text
Button13
1
Button 15
Name
Text
Button15
2
Button 14
Name
Text
Button14
3
Button 29
Name
Text
Button29
4
Button 26
Name
Text
Button26
5
Button 19
Name
Text
Button19
6
Button 28
Name
Text
Button28
7
Button 25
Name
Text
Button25
8
Button 22
Name
Text
Button22
9
Button 24
Name
Text
Button24
0
Button 27
Name
Text
Button27
00
Button 23
Name
Text
Button23
.
Button 8
Name
Text
Button8
±
Button 7
Name
Text
Button7
CLEAR
Button 16
Name
Text
Button16
+
Button 17
Name
Text
Button17
-
Button 18
Name
Text
Button18
x
Button 20
Name
Text
Button20
/
Button 1
Name
Text
Button1
Button 12
Name
Text
Button12
^
Button 11
Name
Text
Button11
%
Button 3
Name
Text
Button3
Sin
Button 2
Name
Text
Button2
Cos
Button 5
Name
Text
Button5
Tan
Button 9
Name
Text
Button9
n!
Button 4
Name
Text
Button4
Π
Button 10
Name
Text
Button10
Log
Button 30
Name
Text
Button30
=
Button 6
Name
Text
Button6
DELETE
Button 32
Name
Text
ForeColor
Button32
ON
Blue
Button 31
Name
Text
ForeColor
Button31
OFF
Red




1 komentar: