BUCLE DE FIN DE BUCLE
La estructura LOOP-END LOOP
realiza transformaciones repetidas especificadas por los mandatos dentro del bucle hasta que alcanzan un límite de corte especificado. El límite de corte se puede especificar mediante una cláusula de indexación en el mandato LOOP
, una cláusula IF
en el mandato END LOOP
o un mandato BREAK
dentro de la estructura de bucle (consulte BREAK
).
LOOP [varname=n TO m [BY {1**}]] [IF [(]logical expression[)]]
{n }
transformation commands
END LOOP [IF [(]logical expression[)]]
* * Valor predeterminado si se omite la palabra clave.
Este mandato no lee el conjunto de datos activo. Se almacena, pendiente de ejecución con el siguiente mandato que lee el conjunto de datos. Consulte el tema Orden de mandatos para obtener más información.
Ejemplos
SET MXLOOPS=10. /*Maximum number of loops allowed
LOOP. /*Loop with no limit other than MXLOOPS
COMPUTE X=X+1.
END LOOP.
LOOP #I=1 TO 5. /*Loop five times
COMPUTE X=X+1.
END LOOP.