1.
Procedure
(Prosedur)
Sejauhini, andatelahmenuliskan sub
procedure yang dibuatsecaraotomatispadasaatmenggunakanevent . Sub procedure
merupakanblokkode yang mempunyainamadanberisiperintah yang
dapatdipanggilsuatuwaktu. Artinya, hanyasekalidibuat yang kemudian di
panggilberkali-kali sesuaidengankebutuhan.
BentukUmum :
[Private|Public]
Sub subname[(argumentlist)]
Statements
End sub
Sub Procedure
dapatdipanggildenganperintah :
[call] subname[(argumentlist)]
Keterangan :
Sub procedure (Procedure) sebaiknyamenggunakan kata kerja (verb)
Pemanggilan procedure yang
masihdalamsatukelas (class) ataumodul (module) dapatdilakukandengan kata kunci
Me.
Procedure dapatmenerima argument
melaluinilai (by value) ataujuga reference (by reference).Jikamenggunakan by
value, nilaipada argument tidakberubah.Sedangkanjikamenggunakan by reference,
nilai argument yang digunakandapatberubahsesuaidenganperintahdalam procedure.
Secara default, argument
dimasukkanmelaluinilai (by value) dapatmenggunakan kata kunciByValdanByRefuntuk
By Reference.
Syntaksargument :
[ByVal|ByRef]
variabelname as type
Contoh :
1. Procedure
dengan argument di passing sebagai value
Sub
HitungVal(byVal as Decimal)
A+=1
textAkhir.text=a
end
sub
2. Procedure
dengan argument di passing sebagai value
Sub
HitungRef(byRef as Decimal)
A+=1
textAkhir.text=a
end
sub
3. pemanggilan
procedure
HitungVal(textAwal.Text)
2.
Function
(Fungsi)
Fungsimempunyaibanyakkemiripandengan sub
procedure. Bedanya, fungsiselalumengembalikannilai (return value)
Sintaksfungsidituliskansebagaiberikut :
[Private|Public]
function functionname[(argumentlist)] [As type]
Statements{
Functionname=expression | {return
expression}
End function
Keterangan :
-
Perbedaanantarafungsidengan procedure
hanyalahpadapengembaliannilaisaja (return value). Sebagaicontoh :
Menggunakan
argument berupanilai (by value) dan reference (by reference)
-
Pengembaliannilaidapatdilakukandenganmenggunakan
operator assignment “=” padafungsiataubiasanyadenganperintah return.
Contoh :
Private FunctioncekData() as Boolean
if IsNumeric(TextAwal.text) then
return true
else
return false
endif
end function
if IsNumeric(TextAwal.text) then
return true
else
return false
endif
end function
Pemanggilanfungsi
ifcekData()=true then
HitungRef(textAwal.text)
else
messageBox.Show(“Data yang dimasukkanbukanangka”,”Kesalahan data”, MessageBoxButtons.OK,
MessageBoxIcons.Error)
endif
HitungRef(textAwal.text)
else
messageBox.Show(“Data yang dimasukkanbukanangka”,”Kesalahan data”, MessageBoxButtons.OK,
MessageBoxIcons.Error)
endif
Procedure
|
Function
|
|
Definisi
|
Sebuahkumpulanperintah
(Statement) yang tidakmengembalikannilaibalikterhadappemanggilnya
|
Sebuahkumpulan
Statement yang akanmengembalikansebuahnilaibalikpadapemanggilnya. Nilai yang
dihasilkan Function harusditampungkedalamsebuahvariabel.
|
Parameter
|
Bisamenggunakan
parameter danbisajugatidakmenggunakan parameter (Optional).
|
Bisamenggunakan
parameter danbisajugatidakmenggunakan parameter (Optional).
|
Deklarasi
|
Menggunakan
keyword “Sub”.
|
Menggunakan
keyword “Function”,
untukmengembalikannilaihasildari
Statement menggunakan keyword “return” ataumenggunakannamadari function
tersebut.
|
Keuntunganmenggunakan procedure dan function adalah:
1. Mengurangiduplikasikode
program
2. Mengatasimasalah yang
kompleksmenjadipotongan-potongan yang lebihsederhana
3. Meningkatkankejelasankode
4. Kode yang mudahdibaca
5. Informasikodebersembunyi
6. Dapatdipakaiberulang
kali
3.
Module
(Modul)
Modulmerupakanbagian
yang sengajadipisahkanuntukmemudahkanpemrograman.Dalam module dapatdimasukkan
procedure danfungsidankemudiandigunakanolehbeberapa form.
-
Umumnyamoduldideklarasikansecara public
(public) agar dapatdigunakan di dalamkodedimanapun
-
Moduldapatdiisidengan main procedure
yang akandijalankanpertama kali saat program dimulai
-
Modulmerupakansalahsatuargumentasicode reuse yang bertujuan agar program
lebihefesien.
Sintakspembuatanmodulsebagaiberikut
:
Module
moduleName
Statement
End
module
Contoh
:
Module Module
Public intResponce, RoleId, Msg
As Integer
Public Username, Password, Nama
As String
End Module
A.
PRAKTIKUM
1. Procedure
1. Buatproject baru, dengannamaPrak10.
2. DesainTampilan
form sepertigambarberikutini :
3. Tambahkankontrolke
form sepertipadagambardiatasdanaturpropertinyasepertitabelberikut:
Object
|
Properties
|
Nilai
|
Form1
|
Name
Text
|
Form1
Barang
|
Label1
|
Text
|
KodeBarang
|
Label2
|
Text
|
NamaBarang
|
Label3
|
Text
|
Satuan
|
Label4
|
Text
|
Harga
|
Label5
|
Text
|
Jumlah
|
Label6
|
Text
|
Total Harga
|
TexBox1
|
Name
|
TxtKodeBrg
|
TexBox2
|
Name
|
TxtNamaBrg
|
TexBox3
|
Name
|
TxtSatuan
|
TexBox4
|
Name
|
TxtHrgSatuan
|
TexBox5
|
Name
|
TxtJumlah
|
TexBox6
|
Name
|
TxtTot
|
Button1
|
Name
Text
|
BtnHitung
Hitung
|
Button2
|
Name
Text
|
BtnClear
Clear
|
Button3
|
Name
Text
|
BtnExit
Exit
|
4. Klikgandapada
Form, kemudianbuatlah sub procedure Bersihberikutini
:
Sub Bersih()
TxtKodeBrg.Text
= ""
TxtNamaBrg.Text
= ""
TxtSatuan.Text
= ""
TxtHrgSatuan.Text
= ""
TxtTot.Text = ""
TxtKodeBrg.Focus()
TxtTot.Enabled
= False
EndSub
5. Panggil
procedure yang andabuatdiatasdengancara, klikgandapada form load ketikkankode
program berikutini :
Call Bersih()
6. Panggil
procedure yang andabuatdiataspadaBtnCleardengancara,
klikgandapadaBtnClearkemudianketikkankode program berikutini :
Call Bersih()
7. JalankanaplikasidenganmenekantombolF5 (di keyboard), ataumelalui icon
Start Debugging di toolbar, ataumelalui menu Debug > Start Debuging.
8. Buatlah
Function Hitung, berikutini :
PrivateFunction Hitung()
DimJumlah, HrgSatuan, Total AsInteger
Jumlah = TxtJumlah.Text
HrgSatuan = TxtHrgSatuan.Text
Total = Jumlah * HrgSatuan
TxtTot.Text = Total
Return Total
EndFunction
9. BuatlahProcedure CekDataKosongdansekaligusmemanggilfunction Hitung, berikutini :
Sub CekDataKosong()
If TxtKodeBrg.Text = ""Then
MessageBox.Show("Kode Barang harus diisi", "Konfirmasi", MessageBoxButtons.OK,
MessageBoxIcon.Warning)
TxtKodeBrg.Focus()
ElseIf TxtNamaBrg.Text = ""Then
MessageBox.Show("Nama Barang harus diisi", "Konfirmasi", MessageBoxButtons.OK,
MessageBoxIcon.Warning)
TxtNamaBrg.Focus()
ElseIf TxtSatuan.Text = ""Then
MessageBox.Show("Satua Barang harus diisi", "Konfirmasi", MessageBoxButtons.OK,
MessageBoxIcon.Warning)
TxtSatuan.Focus()
ElseIf TxtJumlah.Text = ""Then
MessageBox.Show("Harga Barang harus diisi", "Konfirmasi", MessageBoxButtons.OK,
MessageBoxIcon.Warning)
TxtJumlah.Focus()
ElseIf TxtHrgSatuan.Text = ""Then
MessageBox.Show("Harga Satuan Barang harus diisi", "Konfirmasi", MessageBoxButtons.OK,
MessageBoxIcon.Warning)
TxtHrgSatuan.Focus()
Else
Call Hitung()
EndIf
EndSub
10. Memanggil
procedure CekDataKosongdengancara, klikgandapadatombolBtnHitung:
Call CekDataKosong()
11. JalankanaplikasidenganmenekantombolF5 (di keyboard), ataumelalui icon
Start Debugging di toolbar, ataumelalui menu Debug > Start Debuging.
12. KlikgandapadatombolBtnExit,
Kemudianketikkankode program berikutini :
Dim Tutup AsString
Tutup =
MessageBox.Show("Yakin tutup form ini ?",
"Konfirmasi",
MessageBoxButtons.YesNo,MessageBoxIcon.Question)
MessageBoxButtons.YesNo,MessageBoxIcon.Question)
If TUTUP =
MsgBoxResult.Yes Then
End
Else
ExitSub
EndIf
13. JalankanaplikasidenganmenekantombolF5 (di keyboard), ataumelalui icon
Start Debugging di toolbar, ataumelalui menu Debug > Start Debuging.
14. SimpanaplikasiAnda.
2.
Function
1. TambahkanForm baru, dengannamaForm2.
2. DesainTampilan
form sepertigambarberikutini :
3. Tambahkankontrolke
form sepertipadagambardiatasdanaturpropertinyasepertitabelberikut:
Object
|
Properties
|
Nilai
|
Form1
|
Name
Text
|
Form1
Function
|
TexBox1
|
Name
|
TxtVar1
|
TexBox2
|
Name
|
TxtVar2
|
TexBox3
|
Name
|
TxtHasil
|
GroupBox1
|
Text
|
Operasi
|
RadioButton1
|
Name
Text
|
RdbAkar
AkarKuadrad
|
RadioButton2
|
Name
Text
|
RdbPangkat
Pangkat
|
RadioButton3
|
Name
Text
|
RdbPembagian
Pembagian
|
RadioButton4
|
Name
Text
|
RdbPerkalian
Perkalian
|
RadioButton5
|
Name
Text
|
RdbPenjumlahan
Penjumlahan
|
RadioButton6
|
Name
Text
|
RdbPengurangan
Pengurangan
|
Button1
|
Name
Text
|
BtnHitung
Hitung
|
Button2
|
Name
Text
|
BtnExit
Exit
|
4. Klikkananpada
form, kemudianpilih menu view, kemudianketikdeklarasimasing-masingfungsisebagaiberikutini
:
Function Akar(ByVal
a As Decimal) As String
Return
Math.Sqrt(a)
End Function
Function
Pangkat(ByVal a As Decimal, ByVal b As Decimal) As String
Return a ^ b
End Function
Function
Pembagian(ByVal a As Decimal, ByVal b As Decimal) As String
Return a / b
End Function
Function
Perkalian(ByVal a As Decimal, ByVal b As Decimal) As String
Return a * b
End Function
Function
Pemjumlahan(ByVal a As Decimal, ByVal b As Decimal) As String
Return a + b
End Function
Function
Pengurangan(ByVal a As Decimal, ByVal b As Decimal) As String
Return a - b
End Function
5. KlikgandapadaTombolHitung,
kemudianketikkode program berikutini :
If
RdbAkar.Checked = True Then
TxtHasil.Text = Akar(TxtVar1.Text)
ElseIf
RdbPangkat.Checked = True Then
TxtHasil.Text = Pangkat(TxtVar1.Text, TxtVar2.Text)
ElseIf
RdbPembagian.Checked = True Then
TxtHasil.Text = Pembagian(TxtVar1.Text,
TxtVar2.Text)
ElseIf
RdbPerkalian.Checked = True Then
TxtHasil.Text = Perkalian(TxtVar1.Text, TxtVar2.Text)
ElseIf
RdbPenjumlahan.Checked = True Then
TxtHasil.Text = Pemjumlahan(TxtVar1.Text, TxtVar2.Text)
ElseIf
RdbPengurangan.Checked = True Then
TxtHasil.Text = Pengurangan(TxtVar1.Text, TxtVar2.Text)
End If
6.
JalankanaplikasidenganmenekantombolF5 (di keyboard), ataumelalui icon
Start Debugging di toolbar, ataumelalui menu Debug > Start Debuging.
7. SimpanaplikasiAnda
3.
Module
Membuat module rumusmencariluassegitiga.
1.
Menambahkan module kedalam project
Berinama module tersebutsesuaidengan
yang diinginkan.
2.
Mengisi module dengan variable ataufungsi
3.
Tambahkan form dandesainseperticontohberikutini
Keterangan
:
Alas = txt_alas
Tinggi = txt_tinggi
HASIL = txt_hasil
HITUNG = hitung
4.
Tambahkankodepada button “HITUNG”
5. JalankanaplikasidenganmenekantombolF5 (di keyboard), ataumelalui icon
Start Debugging di toolbar, ataumelalui menu Debug > Start Debuging.
6.
SimpanaplikasiAnda
Module Module1
Sub Main()
‘BagianJudul
Console.WriteLine(“MenghitungLuas_Segitiga”)
Console.WriteLine(“————————“)
‘BagianJudul
Console.WriteLine(“MenghitungLuas_Segitiga”)
Console.WriteLine(“————————“)
‘BagianKamus
Dim A As Integer
Dim T As Integer
Dim luas As Double
Dim A As Integer
Dim T As Integer
Dim luas As Double
‘BagianDeskripsi
Console.Write(“Masukan A = “)
A = Console.ReadLine
Console.Write(“Masukan T = “)
T = Console.ReadLine
luas = (1 / 2 * A * T)
Console.WriteLine(“luas:” &luas)
Console.ReadLine()
End Sub
End Module
Console.Write(“Masukan A = “)
A = Console.ReadLine
Console.Write(“Masukan T = “)
T = Console.ReadLine
luas = (1 / 2 * A * T)
Console.WriteLine(“luas:” &luas)
Console.ReadLine()
End Sub
End Module
Tidak ada komentar:
Posting Komentar