IBM Lotus Symphony
|
Opakuje príkazy medzi časťami bloku For...Next zadaný počet ráz.
For počítadlo=začiatok To koniec [Step krok]
blok príkazov
[Exit For]
blok príkazov
Next [počítadlo]
Počítadlo: počítadlo cyklu na začiatku priradilo hodnotu napravo od znamienka rovnosti (začiatok). Platné sú iba numerické premenné. Hodnota počítadla cyklu sa zvyšuje alebo znižuje podľa premennej Step, kým nedosiahne koniec.
Začiatok: numerická premenná, ktorá definuje začiatočnú hodnotu na začiatku cyklu.
Koniec: numerická premenná, ktorá definuje koncovú hodnotu na konci cyklu.
Krok: nastavuje hodnotu, o ktorú sa zvyšuje alebo znižuje počítadlo cyklu. Ak nie je zadaná hodnota kroku, počítadlo cyklu sa zvyšuje o 1. V tomto prípade koncová hodnota musí byť vyššia ako začiatočná hodnota. Ak chcete znižovať hodnotu počítadla, koncová hodnota musí byť nižšia ako začiatočná a krok musí mať zápornú hodnotu.
Cyklus For...Next opakuje všetky príkazy vo vnútre cyklu toľkokrát, koľko to špecifikujú jeho parametre.
Keď bude premenná počítadla zmenšená, Lotus® Symphony™ Basic skontroluje, či bola dosiahnutá koncová hodnota. Len čo počítadlo dosiahne koncovú hodnotu, cyklus sa automaticky ukončí.
Je možné vnárať príkazy For...Next do seba. Ak nezadáte premennú po časti Next v príkaze, Next automaticky odkazuje na poslednú časť príkazu For.
Ak zadáte prírastok 0, príkazy medzi časťami For a Next sa budú nepretržite opakovať.
Pri odpočítavanej hodnoty premennej počítadla LotusSymphony Basic vykoná kontrolu pretečenia alebo podtečenia. Cyklus sa ukončí, keď počítadlo prekročí koncovú hodnotu cyklu (kladná hodnota kroku) alebo je menšie ako koncová hodnota cyklu (záporná hodnota kroku).
Použite príkaz Exit For na nepodmienené ukončenie cyklu. Tento príkaz musí byť vnútri cyklu For...Next. Použite príkaz If...Then na testovanie výstupnej podmienky nasledujúcim spôsobom:
For...
príkazy
If podmienka = True Then Exit For
príkazy
Next
Poznámka: ak vo vnorených cykloch For...Next nepodmienene vystúpite z cyklu pomocou Exit For, vystúpite iba z jedného cyklu.
V nasledujúcom príklade sa používajú dva vnorené cykly na triedenie reťazcového poľa s 10 prvkami ( sEntry() ), ktoré sú najprv naplnené rôznymi obsahmi:
Sub Príklad_Sort
Dim sEntry( 9 ako typ Long) ako typ String
Dim iCount As Integer
Dim iCount2 ako typ Integer
Dim sTemp ako typ String
sEntry(0) = "Jaro"
sEntry(1) = "Paťa"
sEntry(2) = "Kurt"
sEntry(3) = "Tomáš"
sEntry(4) = "Michal"
sEntry(5) = "Dávid"
sEntry(6) = "Katka"
sEntry(7) = "Zuzka"
sEntry(8) = "Edo"
sEntry(9) = "Kristína"
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