Uscita dai cicli For (sintassi Crystal)

È possibile uscire da un loop For utilizzando il loop Exit For. Nell'esempio riportato di seguito, vengono ricercati i nomi di matrice globale per il nome "Mario". Se il nome viene trovato, la formula restituisce l’indice del nome nella matrice. In caso contrario, restituisce -1.

Ad esempio, se la matrice dei nomi è:

["Frank", "Helen", "Fred", "Linda"]

la formula restituisce 3.

Global StringVar Array names;
//I nomi sono stati inizializzati e inseriti in altre formule
Local NumberVar i;
Local NumberVar result := -1;
//La funzione UBound restituisce le dimensioni dell'argomento della matrice
For i := 1 to UBound (names) Do
(
If names [i] = "Fred" Then
(
result := i;
Exit For
)
);
result

Se considerato come un'espressione, il loop For restituisce sempre il valore booleano Vero. Pertanto, è sconsigliabile inserire il loop For come ultima espressione di una formula, in quanto la formula visualizzerà solo il valore True e non il risultato previsto.