Visual Basic memperbolehkan prosedur untuk pengulangan suatu proses sampai kondisi tertentu terpenuhi. Pengulangan ini secara umum disebut sebagai looping. Ada 2 macam perulangan dalam visual basic :
1. Do...Loop
2. For.......Next loop
1 Do Loop
Syntax :
a) Do While kondisi
Blok perintah
Loop
b) Do
Blok perintah
Loop While kondisi
c) Do Until kondisi
blok perintah
Loop
d) Do
Blok perintah
Loop Until kondisi
2 Keluar dari Loop
Untuk keluar / mengakhiri perulangan, dapat digunakan perintah Exit Do. Penggunaan seperti pada contoh 2.
3 For....Next Loop
Syntax:
For counter = startNumber to endNumber
Blok perintah
Next
Contoh penggunaan pada 3a,3b dan 3 c.
Untuk keluar dari For….Next Loop, perintah Exit For dapat diletakkan dalam loop. Lihat contoh 3 d.
Contoh 1
Do while counter <=1000 num.Text=counter counter =counter+1 Loop
NB : (yang ditampilkan adalah angka 1000, padahal sebenarnya system sedang melakukan counter 1 sampai 1000, namun tidak terlihat. Logika yang dipakai = melakukan perintah apabila counter kurand dari 1000, dicetak di num.text dengan yang ditampilan bilangan counternya.)
Do
num.Text=counter
counter=counter+1
Loop until counter>1000
NB : (Sama dengan yang diatas, hanya saja logikanya pada perlakuan sedikit berbeda, yaitu melakukan penjumlahan dan perulangan hingga kondisi memenuhi lebih dari 1000.)
Contoh 2
Dim sum, n As Integer
Private Sub Form_Activate()
List1.AddItem "n" & vbTab & "sum"
Do
n = n + 1
Sum = Sum + n
List1.AddItem n & vbTab & Sum
If n = 100 Then
Exit Do
End If
Loop
End Sub
NB : ( sum dan n dipesan dahulu sebagai integer. Anda harus menyertakan listbox pada Form untuk mencoba ini.)
Contoh 3 a
For counter=1 to 10
display.Text=counter
Next
Contoh 3 b
For counter=1 to 1000 step 10
counter=counter+1
Next
NB : (perulangan yang berkelipatan 10, tapi karena ada penjumlahan counter dibawahnya maka menjadi kelipatan 11.)
Contoh 3 c
For counter=1000 to 5 step -5
counter=counter-10
Next
NB : (Ini perulangan alur mundur dari 1000 sampai 5, namun perulangan alur mundur ini diambil -5. Dan dibawah ada pengurangan nilai counter sebesar 10, jadi apabila dicetak akan menghasilkan bilangan yang selalu berkurang sebesar -15.)
Contoh 3 d
For n = 1 To 10
If n > 6 Then
Exit For
Else
Print n
End If
Next n
NB : ( Logikanya = ada perluangan n dari 1 sampai 10, namun ada validasi logika yang membatasi apabila n lebih besar dari 6 maka perulangan berhenti, dan apabila tidak memnuhi kondisi tersebut / lebih kecil dari 6 maka cetak n pada form, sampai kondisi awal / true terpenuhi.)
Contoh
Dim grade As String
Private Sub cmddowhile1_Click()
cmbdowhile.Clear
i = 10
Do While i > 0
cmbdowhile.AddItem "ANGKA " & i
i = i - 2
Loop
cmbdowhile.ListIndex = 0
End Sub
Private Sub cmddowhile2_Click()
cmbdowhile.Clear
i = 9
Do While i > 0
cmbdowhile.AddItem "ANGKA " & i
i = i - 2
Loop
cmbdowhile.ListIndex = 0
End Sub
Private Sub compute_Click()
grade = txtgrade.Text
Select Case grade
Case "A"
result.Caption = "High Distinction"
Case "A-"
result.Caption = "Distinction"
Case "B"
result.Caption = "Credit"
Case "C"
result.Caption = "Pass"
Case Else
result.Caption = "Fail"
End Select
End Sub
Private Sub dountil1_Click()
txtdountil1.Text = ""
i = 2
Do Until i > 10
txtdountil1.SelText = i & " "
i = i + 2
Loop
End Sub
Private Sub dountil2_Click()
txtdountil2.Text = ""
i = 1
Do Until i > 10
txtdountil2.SelText = i & " "
i = i + 2
Loop
End Sub
Private Sub fornext1_Click()
List1.Clear
For i = 2 To 10 Step 2
List1.AddItem "ANGKA " & i
Next i
End Sub
Private Sub fornext2_Click()
List1.Clear
For i = 1 To 10 Step 2
List1.AddItem "ANGKA " & i
Next i
End Sub
0 comments:
Post a Comment