Sunday, 15 December 2013

Struktur Kontrol Dalam Pemprograman VB (Visual Basic)

Struktur kontrol program atau kadang disebut sebagai struktur kendali merupakan penerapan dari algoritma struktur percabangan dan struktur 
pengulangan 

  • Struktur percabangan

    Struktur percabangan dalam Visual Basic dapat dilakukan dengan menggunakan If ... Then, dan Select ... Case. If ... then digunakan jika percabangan tidak terlalu banyak. Sedangkan Select ... Case digunakan jika ada banyak percabangan. Perhatikan contoh penulisan If ... Then ini.

    Contoh penulisan If .. Then.
    ' Percabangan/pemilihan satu baris tanpa Else
    If x > 0 Then y = x

    ' Percabangan/pemilihan satu baris dengan Else
    If x > 0 Then y = x Else y = 0

    ' Percabangan/pemilihan satu baris dengan Else dan titik dua
    If x > 0 Then y = x: x = 0 Else y = 0

    ' Percabangan ditulis dengan cara lebih dari satu baris
    If x > 0 Then
    y = x
    x = 0
    Else
    y = 0
    End If

    ' Penggunaan blok if
    If x > 0 Then
    y = x
    ElseIf x < 0 Then
    y = x * x
    Else
    x = -1
    End If

    Contoh penulisan Select ... Case.

    Dim position As Integer 'Pilihan
    position = CInt(txtPosition.Text)
    Select Case position
    Case 1
    txtOutcome.Text = "Menang"
    Case 2
    txtOutcome.Text = "Kalah"
    Case 3
    txtOutcome.Text = "Seri"
    Case Else
    txtOutcome.Text = "Tidak bertanding."
    End Select


Coba perhatikan contoh aplikasi dengan menggunakan If ... Then dan Select ... Case berikut ini.

Contoh Program aplikasi dengan if ... then.


         Aktifkan VB 6 kemudian buatlah form sebagai berikut: 

Atur property untuk masing-masing obyek sebagai berikut: 

Buka Jendela Code dan pada bagian Code Editor ketikkan kode programnya sebagai berikut:

Private Sub Command1_Click()
If Text1.Text = "nusantara" Then Image1.Visible =
True
End Sub

Klik menu Project > Project1 Properties lalu klik tab General. Gantilah Startup Object-nya menjadi Form5. Coba jalankan Project1:
    • Ketikkan sembarang teks pada TextBox lalu klik tombol OK atau tekan Enter, tidak terjadi apa-apa.
    • Ketikkan "nusantara" pada TextBox lalu klik tombol OK atau tekan Enter, gambar computer akan muncul.


Penjelasan kode program: 

Modifikasi kode programnya menjadi sebagai berikut:

Private Sub Command1_Click()
If Text1.Text = "nusantara" Then
Image1.Visible = True
Text1.Enabled = False
Command1.Enabled = False
Else
MsgBox "Passwordnya Salah !"
Text1.Text = ""
Text1.SetFocus
End If
End Sub

Coba jalankan kembali Project1: 
    • Ketikkan sembarang teks pada TextBox lalu klik tombol OK atau tekan Enter, muncul kotak pesan "Passwordnya Salah !". Klik tombol OK pada kotak pesan tersebut.
    • Ketikkan "nusantara" pada TextBox lalu klik tombol OK atau tekan Enter, gambar computer akan muncul. TextBox dan tombol OK menjadi disable (tidak bisa digunakan).

Penjelasan kode program: 


Catatan tambahan: 
    • Teks "nusantara" harus diketik huruf kecil semua. Ingat : data string bersifat case sensitive !
    • Agar password-nya tidak bersifat case sensitive, modifikasi
pernyataan kondisinya menjadi:

If LCase(Text1.Text) = "nusantara" Then

Fungsi LCase adalah untuk mengkonversi semua string yang diinput ke Text1.Text menjadi huruf kecil, walaupun user menginputnya dengan huruf kapital.





Program aplikasi dengan Select ... Case.

       Aktifkan VB 6 melalui tombol Start, kemudian buat form sebagai berikut: 

Atur property untuk masing-masing obyek sebagai berikut: 


Buka Jendela Code dan pada bagian Code Editor, ketikkan kode programnya sebagai berikut:
Private Sub Form_Load()
List1.AddItem "Disket"
List1.AddItem "Buku"
List1.AddItem "Kertas"
List1.AddItem "Pulpen"
End Sub 
Private Sub Command1_Click()
Dim harga As Currency, total As Currency
Dim jumlah As Integer
Dim diskon As Single
Dim satuan As String
If List1.Text = "" Then
MsgBox "Anda belum memilih barang !!"
List1.ListIndex = 0
Exit Sub
End If
If Text1.Text = "" Then
MsgBox "Anda belum mengisi jumlah barang !!"
Text1.SetFocus
Exit Sub
End If
Select Case List1.Text
Case "Disket"
harga = 35000
satuan = "Box"
Case "Buku"
harga = 20000
satuan = "Lusin
Case "Kertas"
harga = 25000
satuan = "Rim"
Case "Pulpen"
harga = 10000
satuan = "Pak"
End Select

lblBarang.Caption = "Barang : " & List1.Text
lblHarga.Caption = "Harga : " & Format(harga,
"Currency") & "/" & satuan
lblJumlah.Caption = "Jumlah : " & Text1.Text & " " &
satuan
jumlah = Text1.Text
Select Case jumlah
Case Is < 10
diskon = 0
Case 10 To 20
diskon = 0.15
Case Else
diskon = 0.2
End Select
total = jumlah * (harga * (1 - diskon))
lblDiskon.Caption = "Diskon : " & Format(diskon, "0
%")
lblTotal.Caption = "Total Bayar : " & Format(total,
"Currency")
End Sub


Klik menu Project > Project1 Properties lalu klik tab General. Gantilah Startup Object-nya menjadi Form6. 
Coba jalankan Project1: 
    • List1 akan terisi nama-nama barang.
    • Klik tombol OK, akan muncul kotak pesan &quot;Anda belum memilih barang !!&quot;.
    • Klik OK, nama barang pertama akan terpilih secara otomatis. Anda boleh memilih nama barang yang lainnya.
    • Klik tombol OK, akan muncul kotak pesan &quot;Anda belum mengisi jumlah barang !!&quot;.
    • Klik OK, text1 akan menjadi focus. Isi jumlah barangnya, misalnya : 10.
    • Klik tombol OKm akan tampil : nama barang, harga barang (persatuannya), jumlah barang (dengan satuannya), diskon dan total bayar.
    • Coba ganti pilihan nama barang (pada List1) dan jumlah barang (pada Text1) lalu klik lagi tombol OK.

Penjelasan kode program: 

Catatan: 
    • Bila jumlah barang diisi dengan selain angka akan muncul pesan error.
    • Untuk mengecek isi Text1 angka atau bukan, tambahkan kode berikut:
      If Not IsNumeric(Text1.Text) Then
      MsgBox "Isi jumlah barang harus angka !!"
      Text1.SetFocus
      Exit Sub
      End If



  • Struktur pengulangan

    Struktur pengulangan yang mungkin paling banyak digunakan dalam Visual Basic adalah For. Dalam Visual Basic, struktur for ini dikenal sebagai For ... Next. Cara penulisan umum For ... Next adalah sebagai berikut:

    For counter = nilaiAwal To nilaiAkhir [Step increment]
    'pernyataan yang akan diulang...
    Next

    Perhatikan contoh penggunaan For ... Next dalam aplikasi berikut ini.

    Coba perhatikan contoh pengulangan dengan For ... Next berikut ini.

    Pengulangan dengan For ... Next.

    Dim d As Single, count As Long
    For d = 0 To 10 Step 2
    count = count + 1
    Next
    Print count

    Pada Contoh 7.9, d adalah counter dan kita deklarasikan sebagai single. Kita juga menggunakan increment dengan nilai 2. Nilai increment dapat berupa bilangan bulat atau pecahan. Namun nilai pecahan terkadang memberikan hasil yang tidak kita inginkan. Bagaimanakah output dari program di atas? Pada akhir program, maka nilai count akan sama dengan 5.

    Struktur pengulangan yang lebih fleksibel dari For ... Next adalah Do ... Loop. Do ... Loop dapat berbentuk berbeda-beda. Perhatikan contoh berikut.

    Pengulangan dengan For ... Next.

    Do While x > 0
    y = y + 1
    x = x \ 2
    Loop

    Do
    y = y + 1
    x = x \ 2
    Loop Until x <= 0

    Pada bagian pertama dari Contoh 7.10 kita menggunakan Do While ... Loop. Cara ini sama persis dengan struktur pengulangan dengan While yang telah kita pahami. Pernyataan di bawah Do While, akan dikerjakan jika kondisi pada Do While bernilai benar. Jika tidak maka tidak akan dieksekusi.

    Bagian kedua dari Contoh 7.10, kita menggunakan Do ... Loop Until untuk melakukan pengulangan. Pada bentuk seperti ini, pengulangan dilakukan sampai kondisi pada Loop Until bernilai benar. Jadi selama kondisi di depan Loop until masih bernilai salah, maka pengulangan akan terus dilakukan. Atau Do ... Loop ini merupakan kebalikan dari Do While. Melihat kedua bagian tersebut, apabila kita inisialisasi x = -4 dan Y = 5, bagaimanakah hasilnya? Pada pengulangan dengan Do While, tidak akan      memberikan hasil karena nilai X kurang dari 0 sehingga pengulangan tidak dilakukan. Sedangkan pada Do ... Loop Until, pernyataan di bawah Do masih dikerjakan, karena kondisi baru diperiksa di akhir pengulangan. Sehingga nilai X akan bernilai -2 dan Y bernilai 6.


  • Berikut ini adalah contoh progam aplikasi dengan menggunakan struktur pengulangan.

     Program aplikasi dengan struktur pengulangan.

    Buka VB dan buatlah form sebagai berikut: 

Atur property seperti tabel berikut: 





Buka Jendela Code dan pada bagian Code Editor ketikkan kode programnya sebagai berikut:

Dim i As Integer

Private Sub Command1_Click()
List1.Clear
For i = 1 To 100
List1.AddItem "Angka" & i
Next i
End Sub

Private Sub Command2_Click()
List1.Clear
For i = 100 To 1 Step -2
List1.AddItem "Angka" & i
Next i
End Sub

Private Sub Command3_Click()
List1.Clear
i = Asc("A")
Do Until i &gt; Asc("Z")
List1.AddItem "Huruf" & Chr(i)
i = i + 1
Loop
End Sub


Private Sub Command4_Click()
List1.Clear
i = Asc("Z")
Do While i >= Asc("A")
List1.AddItem "Huruf" & Chr(i)
i = i - 1
Loop
End Sub

Coba jalankan program. Tekan keempat tombol yang ada pada form bergantian. Cobalah cermati output apa yang keluar dari eksekusi program di atas.



1 comment: