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 :
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
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
|
so far so good.. :D
BalasHapus