De search-opdracht kan op twee manieren eindigen. De eerste manier is de zogenaamde at-end-situatie. De tabel is dan tot het eind doorzocht zonder dat een van de voorwaarden achter when waar is geworden. Bij de tweede manier is een voorwaarde wel waar geworden. De computer voert de opdrachten uit die na de conditie staan genoemd. En daarmee is de search afgelopen. Dat betekent dat de search-opdracht slechts één element uit de tabel vindt. Soms willen we verder zoeken in de tabel om te kijken of er nog meer elementen zijn die aan de voorwaarde voldoen.
onthoud
Om verder te zoeken in een tabel maken we de search-opdracht onderdeel van een herhalingsstructuur. Daarbij gebruiken we het feit dat de waarde van de index het startpunt in de tabel aangeeft.
In het volgende voorbeeld bevindt de search-opdracht zich binnen een perform-opdracht.
move "nee" to einde-bereikt perform with test after varying vest-ind from 1 by 1 until einde-bereikt = "ja" search Omzet at end move "ja" to einde-bereikt when Omzet(vest-ind) > 1000000 set afdruknummer to vest-ind display "Nr ", afdruknummer, ": ", Omzet(vest-ind) end-search end-perform
De perform-opdracht zorgt ervoor dat vest-ind de waarde 1 krijgt (from 1). Daarna begint de search. Tijdens de search loopt vest-ind op als de voorwaarde niet waar is. Stel nu dat vestiging nummer 89 een omzet boven de miljoen behaalde. De voorwaarde is waar en de computer voert de set-opdracht en de display-opdracht uit. Daarmee is de search-opdracht afgelopen. Maar de perform-opdracht nog niet! Via de perform-opdracht komt vest-ind op 90 (by 1). En dat is dan het startpunt voor een nieuwe uitvoering van de search-opdracht.
Elke keer als de search-opdracht afgelopen is omdat een voorwaarde voldoet, verhoogt de perform-opdracht de index met 1. Omdat de search-opdracht zich in een perform-structuur bevindt, begint er weer een nieuwe search. Het beginpunt bij die search is de verhoogde index. Dit proces gaat net zolang door totdat het einde van de tabel is bereikt. De variabele einde-bereikt krijgt de waarde ja en de perform-opdracht is dan afgelopen.