koneksi Vb.NET
-
Upload
juwita-ita -
Category
Documents
-
view
84 -
download
7
description
Transcript of koneksi Vb.NET
-
5/20/2018 koneksi Vb.NET
1/15
1
Pertemuan 04. Prosedur dan Fungsi
Prosedur dan fungsi merupakan blok program yang dapat dipanggil dalam sebuah program
aplikasi. Untuk penggunaan prosedur dapat dilakukan hanya dengan memanggil nama prosedur
tersebut. Dengan prosedur penulisan program menjadi lebih modular dan terstruktur. Prosedur
tidak mengembalikan nilai sedangkan fungsi mengembalikan nilai. Secara garis besar ada tiga
jenis prosedur yaitu : Sub prosedur, Function prosedur dan event prosedur.
4.1 Sub Prosedur
Pada Sub prosedur dapat memiliki parameter ataupun tidak. Parameter tersebut bisa
berjumlah lebih dari satu. Pernyataan yang ada didalam prosedur akan dieksekusi ketika
prosedur tersebut dipanggil. Sebuah prosedur didefinisikan dengan kata kunci Sub dan End Sub.
Prosedur dapat ditulis pada module, class atau structure. Penentu akses dari prosedur adalah
private, protected, Friend, dan Public. Secara default penentu akses prosedur adalah public
artinya prosedur dapat dipanggil dari mana saja di dalam proyek tersebut. Parameter pada
prosedur ada dua jenis yaitu : ByVal dan ByRef. Parameter ByVal nilai yang dimasukkan dalam
prosedur hanya berubah pada prosedur tersebut sedangkan diluar prosedur nilai tersebut tidakakan berubah.
Cara memanggil prosedur :
Call [nama_prosedur] ([parameter])
Format penulisan Sub prosedur adalah sebagai berikut :
Subprocedure-name(parameter-list)
declarations and
statements
End Sub
Contoh penggunaan
prosedur :
4.2 Function Prosedur
Hampir sama dengan sub prosedur, namun pada fungsi terdapat nilai kembalian. Fungsi dapat
dibuat sendiri ataupun menggunakan fungsi yang sudah disediakan oleh VB.NET.
Cara memanggil Fungsi
-
5/20/2018 koneksi Vb.NET
2/15
2
Cara pemanggilan fungsi yang dibuat sendiri atau fungsi yang sudah disediakan oleh VB.NET
sama saja yaitu :
[nama_variabel_penampung] = [nama_fungsi] ( parameter)
Format penulisan Fungsi :Functionprocedure-name(parameter-list) As return-type
declarations and statements
Return expression
End Function
Atau
Function name [(arg-list)] [As type ]
declarations and statements
[exit Function]
[statements]End Function
Contoh Penggunaan Fungsi :
-
5/20/2018 koneksi Vb.NET
3/15
3
Beberapa fungsi yang telah tersedia pada VB.NET
4.3 Option Strict
Visual basic menyediakan beberapa cara untuk mengendalikan data type. Pilihan pertama
adalah pada saat Option Explicit On maka pendeklarasian semua variabel sebelum digunakan
didalam program harus dilakukan untuk menghindari kesalahan. Pilihan kedua adalah :
mengubah nilai default option sctric yang biasanya adalah off. Option strict berfungsi untuk
mengurangi waktu debugging dan meningkatkan clarity dari program.
Pada saat option strict di set menjadi on maka compiler akan memeriksa semua konversi,sehingga programmer harus melakukan conversi secara ekspilisit untuk menghidari hilangnya
data (misalnya konversi dari double menjadi integer) atau program tiba-tiba akan berhenti bila
terjadi conversi data dari string hello menjadi integer.
Contohnya adalah penggunaan method Convert yang mensyaratkan agar perubahan tipe data
dilakukan secara eksplisit. Misalnya untuk menyimpan input bertipe string kedalam sebuah
variabel angka yang bertipe interger( yang direpresentasikan dalam VB.NET sebagai TYPE Int32,
32-bit integer). Pada saat option explicit di set menjadi ON maka kita gunakan perintah sebagai
berikut :
number = convert.ToInt32(textbox1.text)
namun pada saat option explicit di set menjadi off maka VB akan melakukan conversi tersebut
secara implisit. Jika data yang dikonversikan tidak sesuai dengan tipe data yang baru maka,
akan terjadi kesalahan runtime.
Untuk mengaktifkan Option Strict adalah sebagai berikut :
-
5/20/2018 koneksi Vb.NET
4/15
4
Programmer juga dapat membuat option strict on hanya untuk sebagian file, pembuatannya
diletakkan pada bagian code program , dengan mengetikkan :
Option strict on
Lalu letakkan kata tersebut di bagian paling atas dari program, sebelum deklarasi atau
statement imports.
4.4. ByVal dan ByRef
ByVal adalah default keyword yang baru untuk method parameter. Visual Studio akan
menambahkannya secara otomatis ketika anda membuat method parameter. Jika parameter
pada method di deklarasikan ByVal berarti nilai dari parameter tersebut adalah kopian dari nilai
parameter method pemanggil. Jadi ketika parameter pada method diubah maka tidak
berpengaruh ke parameter method pemanggil.
Lain halnya jika anda menggunakan keyword ByRef, dengan ByRef maka parameter pada
method mereferensi ke object yang sama dengan parameter pada method pemanggil, maka
jika parameter pada method berubah ini juga berpengaruh ke parameter di method pemanggil.
Perbedaan ByVal dan ByRef
-
5/20/2018 koneksi Vb.NET
5/15
5
PublicClassConValRef
FunctionLuasPersegi(ByRefpanjang AsDouble,ByReflebar AsDouble) AsDouble
panjang += 2lebar += 2Returnpanjang * lebar
EndFunction
FunctionSegitiga(ByValalas AsDouble, _ByValtinggi AsDouble) AsDouble
alas += 2
tinggi += 2Return0.5 * alas * tinggi
EndFunction
PrivateSubButton1_Click(ByValsender AsSystem.Object, _
ByVale AsSystem.EventArgs) HandlesButton1.Click
Dimalas AsDouble= 12Dimtinggi AsDouble= 14'ByVal = nilai dari method pemanggil dicopy ke method
Dimluas AsDouble= Segitiga(alas, tinggi)ListBox1.Items.Add(luas.ToString)
'tetap bernilai 12 walaupun pada method ditambah 2
ListBox1.Items.Add(alas.ToString)'tetap bernilai 14 walaupun pada method ditambah 2
ListBox1.Items.Add(tinggi.ToString)EndSub
PrivateSubButton2_Click(ByValsender AsSystem.Object, _ByVale AsSystem.EventArgs) HandlesButton2.Click
Dimpanjang AsDouble= 12Dimlebar AsDouble= 14
'karena menggunakan ByRef maka parameter pada
'method pemanggil mempunyai referensi yang'sama dengan parameter pada function, jika
'nilai parameter pada function dirubah maka'nilai variabel pada method pemanggil juga berubah
Dimluas AsDouble= LuasPersegi(panjang, lebar)ListBox2.Items.Add(luas.ToString)'menjadi 14 karena ditambah 2 pada function
ListBox2.Items.Add(panjang.ToString)
'menjadi 16 karena ditambah 2 pada functionListBox2.Items.Add(lebar.ToString)
EndSubEndClass
-
5/20/2018 koneksi Vb.NET
6/15
6
Perbedan antara ByRef dan ByVal secara sederhana adalah :
1. ByRef = Parameter yang dikirimkan adalah object sehingga perubahan Nilai dari object
tersebut yang diolah/diubah pada sub/function akan berakibat mengubah juga nilai dari
object tersebut secara langsung.
2. ByVal = Parameter yang dikirimkan adalah Nilai dari sebuah object sehingga anda tidak
dapat mengubah Nilai Object tersebut, anda hanya dapat mengolah/mengubah nilai
object tersebut di dalam sub/function saja, setelah sub/function tersebut selesai,
perubahan nilai object di sub/function tidak akan mengubah nilai object yang
sebenarnya.
contoh :
Dima AsInteger= 0Dimb AsInteger= 0
Sububahnilai(ByVala AsInteger, ByRefb AsInteger)a = 100b = 500
EndSub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) HandlesButton1.Click
Callubahnilai(a, b)
Label4.Text = aLabel3.Text = b
EndSub
Penjelasan dari contoh diatas adalah :
1. Pertama deklarasi variable a dan b dengan default value = 0
2. Panggil fungsi untuk mengubah nilai, b dikirim dengan ByRef (berarti object b nya yang
dikirim) sedangkan a dengan ByVal (berarti nilai a nya yang dikirim yaitu 0)
3. Fungsi tersebut mengubah nilai a menjadi 100 dan b menjadi 500
4. Setelah fungsi itu selesai, kita test nilai variable a dan b dengan menampilkannya ke
label dan hasilnya adalah B=500 (Berubah) dan A=0 (tetap)
-
5/20/2018 koneksi Vb.NET
7/15
7
Pertemuan 06. Pencarian dan Pengurutan dalam Array
Untuk menyimpan data yang besar dapat dilakukan pada database. Kita ketahui bahwa dengan
database maka tipe data seperti apa saja dapat disimpan. Namun tidak semua aplikasi
memerlukan database untuk menyimpan data-datanya. Misalnya saja untuk menyimpan
banyak data mengenai daftar alamat seseorang beserta nomor-teleponnya, maka kita dapat
saja tidak menggunakan database untuk menyimpan data tesebut, sebagai gantinya kita dapatmenyimpan data-data tersebut dapat saja menyimpannya dalam sebuah arraylist. Class
System.Array pada VB.Net menyediakan method untuk melakukan pengurutan dan pencarian
elemen-elemen pada array.
5.1 Melewatkan Array kedalam sebuah prosedur
Untuk melewatkan sebuah array kedalam sebuah prosedur, tentukan nama dari array tanpa
menggunakan tanda kurung. Sebagai contoh :
'Option Explicit On
'Imports System
'Imports Microsoft.VisualBasic
DimDigit() AsByte= {0, 1, 2, 3, 4, 5}
PublicModuleModArr
FunctionsumArray(ByValParamArrayDigit() AsByte)DimTotal AsLong= 0
ForI AsInteger= 0 ToUBound(Digit)Total += Digit(I)
NextI
ReturnTotalEndFunction
SubMain()MsgBox(" Total adalah "& sumArray(Digit),MsgBoxStyle.Information, " Array dalam Prosedur")
EndSub
EndModule
PublicClassForm1
PrivateSubButton1_Click(ByValsender AsSystem.Object, ByVale Assystem.EventArgs) Handles
Button1.ClickCallMain()
EndSubEndClass
-
5/20/2018 koneksi Vb.NET
8/15
8
Hasil interface :
6.1 Pengurutan Array
Pengurutan adalah : pengaturan data menjadi kedalam suatu urutan tertentu seperti
berdasarkan urutan terbesar atau terkecil yang bertujuan untuk memudahkan dalam
mengakses suatu data. Contohnya adalah pengurutan nama perserta matakuliah pemrogramanvisual berdasarakan nim terbesar.
Secara garis besar berasar data yang akan diurutkan, pengurutan dibedakan menjadi dua yaitu :
pengurutan terhadap array dan pengurutan terhadap file sekuensial. Pengurutan terhadap
array disebut juga sebagai pengurutan internal (internal sorting) karena array disimpan didalam
ruang penyimpanan internal komputer (memory) yang cepat dan memungkinkan akses
secara acak dengan memanfaatkan indeks array. Sedangkan jenis pengurutan kedua disebut
sebagai pengurutan eksternal (external sorting) karena file disimpan dalam ruang penyimpanan
eksternal yang didasarkan pada pergerakan piranti secara mekanik,seperti floppy disk atau hard
disk.
Perbedaan kedua jenis pengurutan tersebut dapat dijelaskan dengan contoh pengurutan kartu-
angka. Pengurutan internal dapat diilustrasikan seperti mengurutkan sekumpulan kartu-angka-
diasosiasikan dengan array- yang disebar di depan orang yang mengurutkan sehingga dapat
diakses satu persatu. Lihat gambar
Pengurutan eksternal dapat digambarkan seperti mengurutkan kartu-angka yang masih dapat
dibagi beberapa tumpukan, sehingga yang dapat dilihat hanya kartu teratas.
-
5/20/2018 koneksi Vb.NET
9/15
9
Ada beberapa algoritma yang dapat digunakan untuk melakukan pengurutan antara lain adalah
: Bubble sort, selection short, shell sort, quick short dan lain sebagainya.
Pertimbangan ketika akan melakukan sorting antara lain : 1) perlu tidaknya data disorting,
2)Besarnya atau banyaknya data yang akan disortir, 3)Kemampuan atau kapasitas komputer
atau media penyimpanan datanya. 4) metode sortir yang digunakan.
6.1.1 Bubble sort
Bubble sort merupakan algoritma pengurutan yang paling lambat diantara lainnya. Namun
merupakan algoritma pencarian yang paling mudah untuk dipahami dan digunakan. Metode inimenggunakan serangkaian perbandingan dan operasi pertukaran sampai semua item data
mencapai kondisi urut. Sebagai contoh lihat gambar berikut :
Bubble Sort
Dimisalkan ingin dilakukan pengurutan nilai integer berdasarkan nilai yang paling kecil hingga
yang paling besar. Untuk setiap putaran setiap pasang elemen yang bersebelahan akan
dibandingkan nilainya dan isinya akan ditukar jika nilainya tidak membentuk urutan seperti
yang dimaksud. Proses ini diulang-ulang hingga beberapa putaran proses, dan akan berhenti
sampai dicapai kondisi urut untuk semua item. Pada gambar terlihat bahwa nilai yang lebih
besar akan bergeser ke kanan sedangkan nilai yang lebih kecil akan bergeser ke sebelah kiri. Initerjadi karena nilai-nilai ini bergerak berkali-kali melewati daftar, saling membandingkan nilai-
nilai yang bersebelahan, dan menukar tempatnya jika nilai yang disebelah kiri lebih besar
daripada nilai disebelah kanan. Sebagai contoh adalah penambahan nilai pada list (yaitu nilai 2
dan 72). Dari gambar terlihat pergerakan nilai 72, dari awal array hingga menuju pertengahan
array.
-
5/20/2018 koneksi Vb.NET
10/15
10
Algoritma Bubble Sort :
6.1.2. Selection Sort (pengurutan dengan pemilihan)
Ide dasar pengurutan dengan pemilihan adalah mencari nilai ekstrim dalam array dan
menukarkannya dengan elemen terujung. Elemen terujung tidak diikutkan dalam proses
selanjutnya. Hal yang sama dilakukan pada array sisanya. Pemilihan nilai ekstrim tersebut
tergantung pada hasil akhir pengurutan yang diinginkan. Jika hasil akhir pengurutan yangdiinginkan array terurut mengecil maka nilai ekstrim yang dipilih adalah nilai terbesar, dan
sebaliknya. Ilustrasi dan Algoritma pengurutan dengan seleksi adalah sebagai berikut :
Pada VB.NETFunctionBubbleSort(ByValArraySementara AsInteger)
DimTemp AsIntegerDimi AsIntegerDimtidakberubahs AsInteger
'loop hingga tidak ada lagi perubahan yang dibuat.Do
tidakberubahs = True
' Loop dilakukan untuk setiap elemen didalam array
Fori = 0 ToUBound(nilai) - 1
' Jika elemen dengan indeks yang lebih kecil' nilainya lebih besar dari nilai pada indeks disebelahnya' maka tukarkan kedua elemen tersebut.
Ifnilai(i) > nilai(i + 1) Thentidakberubahs = FalseTemp = nilai(i)
nilai(i) = nilai(i + 1)
nilai(i + 1) = Temp
EndIfNexti
LoopWhileNot(tidakberubahs)EndFunction
-
5/20/2018 koneksi Vb.NET
11/15
11
Selection Sort
Pada VB.Net
PublicFunctionselectionsort(ByValarraysementara AsInteger)DimMaxVal AsInteger 'nilai maksimal
DimMaxIndex AsInteger 'indeks nilai maksimalDimi, j AsInteger
' lakukan langkah melewati setiap elemen dalam array' dimulai dari elemen terakhir dalam array.
Fori = UBound(nilai) To1 Step-1
' Tetapkan nilai maksimal (MaxVal) pada elemen didalam array dan simpan indeks dari elemen ini
sebagai MaxIndex
MaxVal = nilai(i)MaxIndex = i
' Lakukan looping melewati seluruh elemen yang tersisa untuk melihat Apakah ada elemen lainyang lebih besar dari MaxVal.Jika ada maka tetapkan elemen ini sebagai elemen MaxVal yang
baru.Forj = 0 Toi
Ifnilai(j) > MaxVal ThenMaxVal = nilai(j)
MaxIndex = jEndIf
Nextj
' JIka index dari elemen terbesar bukan i maka tukar elemen ini dengan elemen i.
IfMaxIndex < i Thennilai(MaxIndex) = nilai(i)nilai(i) = MaxVal
EndIfNexti
EndFunction
-
5/20/2018 koneksi Vb.NET
12/15
12
Code : Untuk VB.Net
PublicClassForm1
' mendeklarasikan dan memberi nilai pada sebuah variabel array yang bernama nilai yang
bersifat global
Dimnilai() AsInteger= {7, 4, 3, 1, 9, 8}
FunctionBubbleSort(ByValArraySementara AsInteger)
DimTemp AsInteger
Dimi AsInteger
Dimtidakberubahs AsInteger
' loop hingga tidak ada lagi perubahan yang dibuat.
Do
tidakberubahs = True
' Loop dilakukan untuk setiap elemen didalam array
Fori = 0 ToUBound(nilai) - 1
' Jika elemen dengan indeks yang lebih kecil nilainya lebih besar dari nilai pada indeks
disebelahnya maka tukarkan kedua elemen tersebut.
Ifnilai(i) > nilai(i + 1) Thentidakberubahs = False
Temp = nilai(i)
nilai(i) = nilai(i + 1)
nilai(i + 1) = Temp
EndIf
Nexti
LoopWhileNot(tidakberubahs)
-
5/20/2018 koneksi Vb.NET
13/15
13
EndFunction
PublicFunctionselectionsort(ByValarraysementara AsInteger)
DimMaxVal AsInteger 'nilai maksimal
DimMaxIndex AsInteger 'indeks nilai maksimal
Dimi, j AsInteger
' lakukan langkah melewati setiap elemen dalam array dimulai dari elemen terakhir dalam
array.
Fori = UBound(nilai) To1 Step-1
'Tetapkan nilai maksimal (MaxVal) pada elemen didalam array dan simpan indeks dari elemen
ini sebagai MaxIndex
MaxVal = nilai(i)MaxIndex = i
' Lakukan looping melewati seluruh elemen yang tersisa untuk melihat
' Apakah ada elemen lain yang lebih besar dari MaxVal.
' Jika ada maka tetapkan elemen ini sebagai elemen MaxVal yang baru.
Forj = 0 Toi
Ifnilai(j) > MaxVal Then
MaxVal = nilai(j)
MaxIndex = j
EndIf
Nextj
' JIka index dari elemen terbesar bukan i maka tukar elemen ini dengan elemen i.
IfMaxIndex < i Then
nilai(MaxIndex) = nilai(i)
nilai(i) = MaxVal
EndIf
Nexti
EndFunction
PrivateSubButton1_Click(ByValsender AsSystem.Object, ByVale AsSystem.EventArgs)HandlesButton1.Click
' lakukan selection Sorting pada array dan tampilkan nilainya secara terurut.
Dimi AsInteger
selectionsort(nilai(i)) 'panggil fungsi selectionsort
Fori = 0 ToUBound(nilai)
ListBox2.Items.Add(nilai(i))
Nexti
-
5/20/2018 koneksi Vb.NET
14/15
14
EndSub
PrivateSubButton2_Click(ByValsender AsSystem.Object, ByVale AsSystem.EventArgs)
HandlesButton2.Click
Dimi AsIntegerFori = 0 Tonilai.GetUpperBound(0)
ListBox1.Items.Add(nilai(i))
Next
EndSub
PrivateSubButton3_Click(ByValsender AsSystem.Object, ByVale AsSystem.EventArgs)
HandlesButton3.Click
ListBox2.Items.Clear()
EndSub
PrivateSubButton4_Click(ByValsender AsSystem.Object, ByVale AsSystem.EventArgs)
HandlesButton4.Click
Dimi AsInteger
BubbleSort(nilai(i)) ' panggil fungsi bubblesort
Fori = 0 Tonilai.GetUpperBound(0)
ListBox2.Items.Add(nilai(i))
Next
EndSub
EndClass
Selain dengan menggunakan cara diatas, sorting juga dapat dilakukan dengan menggunakanmethod yang sudah disediakan pada VB.NET dengan penjelasan seperti berikut :
Array.Sort(arrayName)
-
5/20/2018 koneksi Vb.NET
15/15
15
Berikut contoh :
Private Sub Button3_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles Button3.Click
Dim people(4) As Stringpeople(0) = ("Rod")
people(1) = ("Sergio")people(2) = ("Terry")people(3) = ("Homer")people(4) = ("Eoin")Dim txt As String = "People:" & vbCrLfFor i As Integer = 0 To people.Length - 1txt &= " " & people(i).ToString() & vbCrLfNext i' Mengurutkan.Array.Sort(people)txt &= "Sorted:" & vbCrLfFor i As Integer = 0 To people.Length - 1
txt &= " " & people(i).ToString() & vbCrLfNext iMsgBox(txt & vbCrLf)
End Sub