IBM Lotus Symphony
|
Ponavlja stavke v bloku For...Next tolikokrat, kot je podano.
For counter=start To end [Step step]
blok stavka
[Exit For]
blok stavka
Next [counter]
Counter (Števec): Števec zank, ki mu je na začetku dodeljena vrednost na desni strani enačaja (start). Veljavne so samo številske spremenljivke. Števec zank se povečuje ali zmanjšuje skladno s spremenljivko Step, dokler ni podan End.
Start (Začetek): Številska spremenljivka, ki definira začetno vrednost ob začetku zanke.
End (Konec): Številska spremenljivka, ki definira končno vrednost ob koncu zanke.
Step (Korak): Nastavi vrednost, za katero želite povečati ali zmanjšati števec zank. Če Step ni podan, se števec zank povečuje po 1. V tem primeru mora biti End večji kot Start. Če želite zmanjševati števec, mora biti End manjši kot Start, Step pa mora imeti dodeljeno negativno vrednost.
Zanka For...Next ponavlja vse stavke v zanki tolikokrat, kolikor je podano v parametrih.
Ker je spremenljivka števca zmanjšana, Lotus® Symphony™ Basic preveri, ali je bila dosežena končna vrednost. Kakor hitro števec preide končno vrednost, se zanka samodejno zaključi.
Ugnezdite lahko več stavkov For...Next. Če ne podate spremenljivke, ki sledi stavku Next, se Next samodejno nanaša na najnovejši stavek For.
Če podate prirastek po 0, se bodo stavki med For in Next stalno ponavljali.
Kadar odštevate od spremenljivke števca, Lotus Symphony Basic preverja zgornjo ali spodnjo prekoračitev. Zanka se konča, kadar števec preseže End (pozitivna vrednost Step) ali je manj kot End (negativna vrednost Step).
Uporabite stavek Exit For, če želite brezpogojno zapustiti zanko. Ta stavek mora biti znotraj zanke For...Next. Uporabite stavek If...Then, če želite testirati izhodne pogoje po naslednjem postopku:
For...
statements
If condition = True Then Exit For
statements
Naprej
Opomba: Pri ugnezdenih zankah For...Next se v primeru, ko brezpogojno zapustite zanko z Exit For, zapusti samo ena zanka.
Naslednji primer uporablja dve ugnezdeni zanki za razvrščanje nizovnih matrik z 10 elementi ( sEntry() ), ki so najprej napolnjeni z različno vsebino:
Sub ExampleSort
Dim sEntry(9) As String
Dim iCount As Integer
Dim iCount2 As Integer
Dim sTemp As String
sEntry(0) = "Jerry"
sEntry(1) = "Patty"
sEntry(2) = "Kurt"
sEntry(3) = "Thomas"
sEntry(4) = "Michael"
sEntry(5) = "David"
sEntry(6) = "Cathy"
sEntry(7) = "Susie"
sEntry(8) = "Edward"
sEntry(9) = "Christine"
For iCount = 0 To 9
For iCount2 = iCount + 1 To 9
If sEntry(iCount) > sEntry(iCount2) Then
sTemp = sEntry(iCount)
sEntry(iCount) = sEntry(iCount2)
sEntry(iCount2) = sTemp
End If
Next iCount2
Next iCount
For iCount = 0 To 9
Print sEntry(iCount)
Next iCount
End Sub