P6 Struktur Kontrol pada Visual Basic.Net A. Tujuan Mahasiswa dapat memahami berbagai selection pada pemrograman Visual Basic.Net. Mahasiswa dapat membuat aplikasi dengan kasus berbagai bentuk selection. B. Pembahasan Struktur Kontrol : Struktur Kontrol Percabangan Struktur Kontrol Perulangan Struktur kontrol merupakan sebuah aliran yang digunakan untuk mengatur jalannya program. Terdapat 2 jenis struktur kontrol yaitu : Struktur kontrol percabangan (selection/branching) yaitu struktur kontrol yang digunakan untuk memilih/menyaring suatu nilai untuk mengambil keputusan. Struktur kontrol perulangan (looping) yaitu struktur kontrol yang digunakan untuk mengulang suatu statemen. 6.1. Struktur Kontrol Percabangan (Selection) Struktur kontrol percabangan pada Visual Basic.Net terdiri dari 2 statemen yaitu : If dan Select. Struktur kontrol percabangan digunakan untuk menyaring suatu nilai, kemudian keputusan yang dipilih adalah yang sesuai dengan keriteria penyaringan tersebut. 6.1.1. Selection dengan If Then Bentuk If Then mempunyai 2 buah blok statemen yang hanya dieksekusi salah satu. Deklarasi : If kondisi Then Statemen 1 Statemen 2 Blok akan dijalankan apabila kondisi pada blok If tidak menghasilkan nilai true. Syntax lengkap : 1 Visual Basic.Net
If <kondisi_1> Then <aksi_1> If <kondisi_2> Then <aksi_2> If <kondisi_n> Then <aksi_n> Jika kondisi 1 terpenuhi, aksi sesudah pernyataan 1 akan dijalankan (aksi 1), jika tidak (else) maka aksi berikutnya akan dikerjakan,begitu seterusnya sampai dengan aksi ke-n. penyeleksian ini akan berhenti jika menemukan kondisi yang terpenuhi. Sebagai contoh, perhatikan program berikut : 1. Buat sebuah form baru dengan nama frmkontrolif. 2. Tambahkan objek button, dan aturlah propertinya : : btninput : Input Nilai 3. Klik ganda pada button tersebut kemudian tuliskan kode berikut : Private Sub btninput_click(byval sender As System.Object, ByVal e As System.EventArgs) Handles btninput.click Dim nilai As Byte Try nilai = InputBox("Masukkan nilai yang akan diuji!", "Input", vbok) Catch ex As Exception MsgBox("Masukkan sebuah angka dari 1-100",, "Kesalahan") End Try If (nilai > 70) Then MessageBox.Show("Nilai lebih besar daripada tujuh puluh", "Hasil") MessageBox.Show("Nilai lebih kecil atau sama dengan tujuh puluh", "Hasil") End Sub 4. Blok Try Cath untuk mengkonversi nilai yang dimasukkan lewat InputBox. Nilai yang dikembalikan oleh InputBox otomatis akan dikonversi ke tipe Byte. 5. Hasil dari eksekusi program adalah sebagai berikut : 2 Visual Basic.Net
Gambar 6. 1 Desain form KontrolIf Gambar 6. 2 Tampilan InputBox 6. Jalankan program dengan mencoba menginputkan nilai <70, >70, dan >100 dan perhatikan bagaimana hasil yang diberikan oleh program. 7. Penjelasan syntax program : No Syntax Keterangan 1 Dim nilai As Byte Mendeklarasikan variabel nilai bertipe byte 2 Try - Blok Try Cath : untuk mengkonversi nilai yang nilai = InputBox("Masukkan dimasukkan lewat InputBox. nilai yang akan diuji!", - Pada blok Try : akan memanggil InputBox untuk "Input", vbok) Catch ex As Exception memasukkan nilai MsgBox("Masukkan sebuah - Pada blok Cath : akan memanggil MessageBox jika angka dari 1-100",, terjadi kesalahan dalam memasukkan nilai yang "Kesalahan") >100. End Try 3 If (nilai > 70) Then MessageBox.Show("Nilai lebih besar daripada tujuh puluh", "Hasil") MessageBox.Show("Nilai lebih kecil atau sama dengan tujuh puluh", "Hasil" 6.1.2. Selection dengan If Then If Bentuk pernyataannya sebagai berikut : - Pada blok If : akan menampilkan MessageBox jika memasukkan nilai >70 - Pada blok : akan menampilkan MessageBox jika memasukkan nilai <70 If <kondisi_1> Then <aksi_1> If <kondisi_2> Then <aksi_2> If <kondisi_n> Then <aksi_n> 3 Visual Basic.Net
Contoh : 1. Desainlah sebuah form dengan nama frmkontrolif. 2. Tambahkan beberapa objek berikut dan aturlah nilai propertinya : Nama Komponen Properties Values Form frmkontrolif Seleksi dengan If Then If Label 1 Menghitung Indeks Nilai Label 2 Masukkan NIM Label 3 Masukkan Nama Label 4 Nilai Total Label 5 Indeks Nilai Box 1 txtnim Box 2 txtnama Box 3 txtnilai Box 4 txtindeks Button 1 btnkonversi Konversi Button 2 3. Buatlah deklarasi variabel berikut : Public Class frmkontrolif Dim nim As String Dim nama As String btnexit Exit 4. Klik ganda pada button konversi, kemudian ketikkan kode berikut Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnkonversi.click If (txtnilai. >= 0) And (txtnilai. <= 50) Then txtindeks. = "D" If (txtnilai. > 50) And (txtnilai. <= 75) Then txtindeks. = "C" If (txtnilai. > 75) And (txtnilai. <= 80) Then txtindeks. = "B" If (txtnilai. > 80) And (txtnilai. <= 100) Then txtindeks. = "A" txtindeks. = "T" End Sub 5. Hasil eksekusi program terlihat seperti pada tampilan berikut : 4 Visual Basic.Net
Gambar 6. 3 Hasil eksekusi form KontrolIf 6. Setelah menjalankan program, cobalah untuk mengisi setiap textbox dengan nilai total sembarang, kemudian perhatiakan bagaimakah indeks nilai yang akan ditampilkan. 7. Penjelasan syntax program : Jika textboxnilai diisi nilai >=0 dan <=50 maka textboxindeks akan disi dengan kode huruf D, Jika tidak textboxnilai di isi nilai > 50 dan <=75 maka textboxindeks akan disi dengan kode huruf C, Jika tidak textboxnilai di isi nilai > 75 dan <=80 maka textboxindeks akan disi dengan kode huruf B, Jika tidak textboxnilai di isi nilai > 80 dan <=100 maka textboxindeks akan disi dengan kode huruf A, Jika textboxnilai di isi nilai < 0 dan >100 maka textboxindeks akan disi dengan kode huruf T. 6.1.3. Selection dengan Select Case Bentuk pernyataan hampir sama dengan bentuk If Then If. Contoh : 1. Buatlah form dengan nama frmkontrolselect 2. Susunlah beberapa objek dengan nilai properti sebagai berikut : 5 Visual Basic.Net Nama Komponen Properties Values Form frmkontrolselect Seleksi dengan Select Case Label 1 Menghitung Nilai Akhir
Label 2 Masukkan NIM Label 3 Masukkan Nama Label 4 Nilai UTS Label 5 Nilai UAS Label 6 Nilai Akhir Box 1 txtnim Box 2 txtnama Box 3 txtuts Box 4 txtuas Box 5 e txtnilai Akhir Button 1 btnkonversi Konversi Button 2 btnexit Exit 3. Klik ganda pada button konversi, kemudian ketikkan kode berikut : Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnkonversi.click Dim nilai_akhir As Double If Trim(txtNIM.) = "" And Trim(txtNama.) = "" Then MsgBox("Inputkan dulu NIM dan Nama Mahasiswa OK!") If Trim(txtUTS.) = "" Or Trim(txtUAS.) = "" Then txtnilaiakhir. = "T" nilai_akhir = (Val(txtUTS.) + Val(txtUAS.)) / 2 Select Case nilai_akhir Case 0 To 30 txtnilaiakhir. = "E" Case 31 To 40 txtnilaiakhir. = "D" Case 41 To 60 txtnilaiakhir. = "C" Case 61 To 80 txtnilaiakhir. = "B" Case 81 To 100 txtnilaiakhir. = "A" Case txtnilaiakhir. = "T" End Select End Sub 4. Hasil eksekusi program akan terlihat seperti berikut ini : 6 Visual Basic.Net
Gambar 6. 4 Hasil eksekusi form KontrolSelect 5. Untuk menjalankan program, isilah textbox dengan Nilai UTS dan Nilai UAS dengan nilai sembarang dan perhatikan Nilai Akhir yang ditampilkan. 6. Penjelasan syntax program : Program akan menyeleksi Jika textboxnim dan textboxnama dikosongkan, maka akan ditampilkan messagebox Jika textboxuts dan textboxuas dikosongkan, maka pada textboxindeks akan di isi dengan kode T Selanjutnya akan diseleksi Jika nilai antara range 0-30, maka textboxnilaiakhir akan di isi dengan nilai E Jika nilai antara range 31-40, maka textboxnilaiakhir akan di isi dengan nilai D Jika nilai antara range 41-60, maka textboxnilaiakhir akan di isi dengan nilai C Jika nilai antara range 61-80, maka textboxnilaiakhir akan di isi dengan nilai B Jika nilai antara range 81-100, maka textboxnilaiakhir akan di isi dengan nilai A Selain nilai antara range diatas maka textboxnilaiakhir akan di isi dengan nilai T 6.2. Struktur Kontrol Perulangan (Looping) Looping atau perulangan merupakan proses yang dilakukan untuk mengeksekusi sebuah pernyataan secara berulang-ulang sampai pada kondisi tertentu terpenuhi. Bentuk perulangan berupa perintah : For Next Do While Loop While End While 6.2.1. Looping dengan For Next Bentuk syntax dari For Next adalah : 7 Visual Basic.Net
For <nama_variabel> = <n_awal> to <n_akhir> Step<nilai_perubahan>... Exit for... Next <nama_variabel> Bentuk perulangan ini digunakan untuk mengulang suatu pernyataan yang sudah diketahui, karena telah mendeklarasikan n_awal (awal perulangan) dan n_akhir (akhir perulangan). n_awal dan n_akhir menjadi kondisi pada bentuk perulangan For Next. 6.2.2. Looping dengan Do While Loop Bentuk perulangan Do While Loop untuk kasus bila banyaknya perulangan yang akan dilakukan belum dapat diketahui. Perulangan akan berhenti apabila kondisi telah bernilai salah atau false, ketika kondisi masih bernilai benar atau true maka perulangan akan terus dilakukan. Struktur perulangan Do While Loop : For <kondisi>... Exit Do... Loop 6.2.3. Looping dengan While End While Bentuk perulangan ini dapat dilakukan jika banyaknya perulangan yang akan dilakukan belum diketahui. Perulangan akan berhenti apabila kondisi telah bernilai salah atau false. Struktur perulangan While EndWhile : While <kondisi>... End While 8 Visual Basic.Net
Latihan 6.1. Contoh Perulangan dengan For Next 1. Desainlah sebuah form dengan nama frmdatadokter, seperti pada tampilan form berikut : 9 Visual Basic.Net Gambar 6. 5 Desain form Data Dokter 2. Aturlah properti untuk beberapa objek berikut Komponen/Objek pada Form Data Dokter Nama Komponen Properties Values Form1 frmdatadokter Data Dokter GroupBox1 BackColor Input Data Dokter LightBlue Label1 NIK Label2 Nama Label3 Alamat Label4 Telepon Box1 BoxNIK Box2 BoxNama Box3 BoxAlamat Box4 BoxTelepon Button1 &Simpan Button2 &Lihat Data Label5 NIK Label6 Nama Label7 Alamat Label8 Telepon ListBox1 - - ListBox2 - -
ListBox3 - - ListBox4 - - Button3 &Close 3. Buatlah deklarasi variabel sebagai berikut : Public Class frmdatadokter Dim jumlah_data As Byte = 5 Dim indeks_data As Byte = 0 Dim data_dokter(5, 4) As String 4. Double klik pada button Simpan, lalu ketikkan kode berikut : Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click If indeks_data > jumlah_data - 1 Then MsgBox("List sudah penuh") data_dokter(indeks_data, 0) = BoxNIK. data_dokter(indeks_data, 1) = BoxNama. data_dokter(indeks_data, 2) = BoxAlamat. data_dokter(indeks_data, 3) = BoxTelepon. BoxNIK. = "" BoxNama. = "" BoxAlamat. = "" BoxTelepon. = "" BoxNIK.Focus() indeks_data = indeks_data + 1 End Sub 5. Double klik pada button Lihat Data, lalu ketikkan kode berikut : Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Dim i As Byte ListBox1.Items.Clear() ListBox2.Items.Clear() ListBox3.Items.Clear() ListBox4.Items.Clear() If indeks_data > 0 Then For i = 0 To indeks_data - 1 ListBox1.Items.Add(data_dokter(i, 0)) ListBox2.Items.Add(data_dokter(i, 1)) ListBox3.Items.Add(data_dokter(i, 2)) ListBox4.Items.Add(data_dokter(i, 3)) Next End Sub 6. Jalankan form dengan mengklik tombol Start Debugging. 10 Visual Basic.Net