IF condition_0 THEN Label_0 IF condition_l THEN Label_l IF condition_2 THEN Label_2
To podejście jest prawidłowe, jednakże można użyć specjalnej instrukcji BRANCH, która ma prostszy zapis, i zastępuje wiele instrukcji IF następujących po sobie.
BRANCH controlVar,[Label_0, Label_l, Label_2]
Używa pojedynczej zmiennej controlVar do kontroli listy adresów, a działa tak że, jeśli control Var jest równy zero, to program przejdzie do Label_0, jeśli control Var jest równy jeden, to program przejdzie do Label_l i tak dalej.
2. Pętle
Pętle są używane do wielokrotnego powtarzania danej sekcji programu. Pętle używają warunkowych lub bezwarunkowych rozgałęzień, w celu przejścia do odpowiedniej etykiety. Oto przykład pętli z rozgałęzieniem bezwarunkowym.
Etykieta: wyrażanie 1 wyrażanie 2 wyrażanie 3 GOTO Etykieta
Poprzez użycie GOTO wyrażenia są wielokrotnie powtarzane. Poprzez użycie IF-THEN można dodać element warunkowy do danej pętli, np. określający kiedy dana pętla ma się zakończyć, oto przykład warunkowego wyjścia z pętli:
Etykieta: wyrażanie 1 wyrażanie 2 wyrażanie 3
IF warunek THEN Etykieta
W tym przypadku jeśli zmienna warunek będzie miała wartość logiczną TRUE to powtarzanie instrukcji wewnątrz pętli będzie kontynuowane, natomiast jeśli będzie miała wartość logiczną FALSE to wykonywanie instrukcji wewnątrz tej pętli zakończy się. Łatwo zauważyć, że przy tej konstrukcji pętla te przynajmniej raz wykona się. Aby temu zapobiec można przekształcić nieco powyższy kod, dodając NOT przy sprawdzaniu warunku.
W tym przypadku, aby na samym początku pętla się w ogóle nie wykonała zmienna warunek na początku musi mieć wartość FALSE.
Label_l:
IF (warunek) THEN Label_2
wyrażanie 1
wyrażanie 2
wyrażanie 3
GOTO Label_l
Label_2:
wyrażanie 4
Kolejną konstrukcją używaną do tworzenia pętli i sprawdzania warunku zakończenia jest FOR-NEXT:
FOR
itrolYar = startVal TO endVal STEP stepSize