Anda di halaman 1dari 10

Mata Pelajaran : Pemrograman Dasar

Kelas : X / RPL / B
Pengampu : Setyawan Harjanto, S.Kom
Rekayasa Perangkat Lunak
SMK negeri 5 Surakarta
TP. 2017 / 2018

P6
Struktur Kontrol pada Visual Basic

A. Tujuan
 Siswa dapat memahami berbagai selection pada pemrograman Visual Basic
 Siswa 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…Else

Bentuk If…Then…Else mempunyai 2 buah blok statemen yang hanya dieksekusi salah
satu.
Deklarasi :
If kondisi Then
Statemen 1
Else
Statemen 2
End If
Blok Else akan dijalankan apabila kondisi pada blok If tidak menghasilkan nilai true.
Syntax lengkap :

1 Visual Basic
Mata Pelajaran : Pemrograman Dasar
Kelas : X / RPL / B
Pengampu : Setyawan Harjanto, S.Kom
Rekayasa Perangkat Lunak
SMK negeri 5 Surakarta
TP. 2017 / 2018

If <kondisi_1> Then
<aksi_1>
Else
If <kondisi_2> Then
<aksi_2>
Else
If <kondisi_N> Then
<aksi_N>
End If
End If

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 “frmKontrolIfElse”.
2. Tambahkan objek button, dan aturlah propertinya :
Name : btnInput
Text : 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")
Else
MessageBox.Show("Nilai lebih kecil atau sama dengan tujuh puluh" ,
"Hasil")
End If
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
Mata Pelajaran : Pemrograman Dasar
Kelas : X / RPL / B
Pengampu : Setyawan Harjanto, S.Kom
Rekayasa Perangkat Lunak
SMK negeri 5 Surakarta
TP. 2017 / 2018

Gambar 6. 1 Desain form KontrolIfElse


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 - Pada blok If : akan menampilkan MessageBox jika
MessageBox.Show("Nilai lebih memasukkan nilai >70
besar daripada tujuh puluh",
- Pada blok Else : akan menampilkan MessageBox jika
"Hasil")
Else memasukkan nilai <70
MessageBox.Show("Nilai lebih
kecil atau sama dengan tujuh
puluh", "Hasil"
End If

6.1.2. Selection dengan If…Then…ElseIf

Bentuk pernyataannya sebagai berikut :

If <kondisi_1> Then
<aksi_1>
ElseIf
<kondisi_2> Then
<aksi_2>
ElseIf
<kondisi_N> Then
<aksi_N>
End If

3 Visual Basic
Mata Pelajaran : Pemrograman Dasar
Kelas : X / RPL / B
Pengampu : Setyawan Harjanto, S.Kom
Rekayasa Perangkat Lunak
SMK negeri 5 Surakarta
TP. 2017 / 2018

Contoh :
1. Desainlah sebuah form dengan nama “frmKontrolElseIf”.
2. Tambahkan beberapa objek berikut dan aturlah nilai propertinya :

Nama Komponen Properties Values


Form Name frmKontrolElseIf
Text Seleksi dengan
If…Then…ElseIf
Label 1 Text Menghitung Indeks Nilai
Label 2 Text Masukkan NIM
Label 3 Text Masukkan Nama
Label 4 Text Nilai Total
Label 5 Text Indeks Nilai
TextBox 1 Name txtNIM
TextBox 2 Name txtNama
TextBox 3 Name txtNilai
TextBox 4 Name txtIndeks
Button 1 Name btnKonversi
Text Konversi
Button 2 Name btnExit
Text Exit

3. Buatlah deklarasi variabel berikut :


Public Class frmKontrolElseIf
Dim nim As String
Dim nama As String

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.Text >= 0) And (txtNilai.Text <= 50) Then
txtIndeks.Text = "D"
ElseIf (txtNilai.Text > 50) And (txtNilai.Text <= 75) Then
txtIndeks.Text = "C"
ElseIf (txtNilai.Text > 75) And (txtNilai.Text <= 80) Then
txtIndeks.Text = "B"
ElseIf (txtNilai.Text > 80) And (txtNilai.Text <= 100) Then
txtIndeks.Text = "A"
Else
txtIndeks.Text = "T"
End If
End Sub

5. Hasil eksekusi program terlihat seperti pada tampilan berikut :

4 Visual Basic
Mata Pelajaran : Pemrograman Dasar
Kelas : X / RPL / B
Pengampu : Setyawan Harjanto, S.Kom
Rekayasa Perangkat Lunak
SMK negeri 5 Surakarta
TP. 2017 / 2018

Gambar 6. 3 Hasil eksekusi form KontrolElseIf

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…ElseIf.


Contoh :
1. Buatlah form dengan nama “frmKontrolSelect”
2. Susunlah beberapa objek dengan nilai properti sebagai berikut :
Nama Komponen Properties Values
Form Name frmKontrolSelect
Text Seleksi dengan
Select…Case
Label 1 Text Menghitung Nilai Akhir

5 Visual Basic
Mata Pelajaran : Pemrograman Dasar
Kelas : X / RPL / B
Pengampu : Setyawan Harjanto, S.Kom
Rekayasa Perangkat Lunak
SMK negeri 5 Surakarta
TP. 2017 / 2018

Label 2 Text Masukkan NIM


Label 3 Text Masukkan Nama
Label 4 Text Nilai UTS
Label 5 Text Nilai UAS
Label 6 Text Nilai Akhir
TextBox 1 Name txtNIM
TextBox 2 Name txtNama
TextBox 3 Name txtUTS
TextBox 4 Name txtUAS
TextBox 5 Namee txtNilai Akhir
Button 1 Name btnKonversi
Text Konversi
Button 2 Name btnExit
Text 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.Text) = "" And Trim(txtNama.Text) = "" Then
MsgBox("Inputkan dulu NIM dan Nama Mahasiswa OK!")
Else
If Trim(txtUTS.Text) = "" Or Trim(txtUAS.Text) = "" Then
txtNilaiAkhir.Text = "T"
Else
nilai_akhir = (Val(txtUTS.Text) + Val(txtUAS.Text)) / 2
Select Case nilai_akhir
Case 0 To 30
txtNilaiAkhir.Text = "E"
Case 31 To 40
txtNilaiAkhir.Text = "D"
Case 41 To 60
txtNilaiAkhir.Text = "C"
Case 61 To 80
txtNilaiAkhir.Text = "B"
Case 81 To 100
txtNilaiAkhir.Text = "A"
Case Else
txtNilaiAkhir.Text = "T"
End Select
End If
End If
End Sub

4. Hasil eksekusi program akan terlihat seperti berikut ini :

6 Visual Basic
Mata Pelajaran : Pemrograman Dasar
Kelas : X / RPL / B
Pengampu : Setyawan Harjanto, S.Kom
Rekayasa Perangkat Lunak
SMK negeri 5 Surakarta
TP. 2017 / 2018

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
Mata Pelajaran : Pemrograman Dasar
Kelas : X / RPL / B
Pengampu : Setyawan Harjanto, S.Kom
Rekayasa Perangkat Lunak
SMK negeri 5 Surakarta
TP. 2017 / 2018

For <nama_variabel> = <n_awal> to <n_akhir>


Step<nilai_perubahan>
<pernyataan>
......
Exit for
.......
<pernyataan>
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>
<pernyataan>
......
Exit Do
.......
<pernyataan>
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>
<pernyataan>
......
<pernyataan>
End While

8 Visual Basic
Mata Pelajaran : Pemrograman Dasar
Kelas : X / RPL / B
Pengampu : Setyawan Harjanto, S.Kom
Rekayasa Perangkat Lunak
SMK negeri 5 Surakarta
TP. 2017 / 2018

Latihan 6.1. Contoh Perulangan dengan For…Next

1. Desainlah sebuah form dengan nama “frmDataDokter”, seperti pada tampilan form berikut :

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 Name frmDataDokter
Text Data Dokter
GroupBox1 Text Input Data Dokter
BackColor LightBlue
Label1 Text NIK
Label2 Text Nama
Label3 Text Alamat
Label4 Text Telepon
TextBox1 Name TextBoxNIK
TextBox2 Name TextBoxNama
TextBox3 Name TextBoxAlamat
TextBox4 Name TextBoxTelepon
Button1 Text &Simpan
Button2 Text &Lihat Data
Label5 Text NIK
Label6 Text Nama
Label7 Text Alamat
Label8 Text Telepon
ListBox1 - -
ListBox2 - -

9 Visual Basic
Mata Pelajaran : Pemrograman Dasar
Kelas : X / RPL / B
Pengampu : Setyawan Harjanto, S.Kom
Rekayasa Perangkat Lunak
SMK negeri 5 Surakarta
TP. 2017 / 2018

ListBox3 - -
ListBox4 - -
Button3 Text &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")
Else
data_dokter(indeks_data, 0) = TextBoxNIK.Text
data_dokter(indeks_data, 1) = TextBoxNama.Text
data_dokter(indeks_data, 2) = TextBoxAlamat.Text
data_dokter(indeks_data, 3) = TextBoxTelepon.Text
TextBoxNIK.Text = ""
TextBoxNama.Text = ""
TextBoxAlamat.Text = ""
TextBoxTelepon.Text = ""
TextBoxNIK.Focus()
indeks_data = indeks_data + 1
End If
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 If
End Sub

6. Jalankan form dengan mengklik tombol Start Debugging.

10 Visual Basic

Anda mungkin juga menyukai