Saltar navegación

Documentación de FlexPro 2025

While...Do...End

Ejecuta una serie de instrucciones siempre que una condición dada sea TRUE.

Sintaxis

While Condición Do

   [Instrucciones]

End

La sintaxis de la instrucción While...Do...End consta de las siguientes partes:

Parte

Descripción

Condición

Una expresión que devuelve TRUE, FALSE o cualquier valor escalar numérico. Con un resultado numérico, todos los valores distintos de cero se interpretan como TRUE.

Instrucciones

Una o más instrucciones entre Do y End, que se repiten tantas veces como la Condición resulte TRUE.

Notas

Si la Condición tiene el valor TRUE, se ejecutan todas las instrucciones hasta la instrucción End. A continuación, el programa vuelve a la instrucción While y comprueba si la condición sigue dando como resultado TRUE. En ese caso, se repite el proceso. Si la Condición tiene el valor FALSE, el programa continúa la ejecución con la instrucción siguiente a la instrucción End.

Las instrucciones While...Do...End pueden anidarse unas dentro de otras según sea necesario. Una instrucción End siempre hace referencia a la última instrucción While ejecutada en el mismo nivel.

Nota   En la medida de lo posible, evite los bucles sobre valores individuales de un conjunto de datos. FPScript le ofrece la posibilidad de calcular conjuntos de datos completos en una sola instrucción. Por lo general, los bucles pueden sustituirse por funciones de aislamiento de eventos junto con el operador de índice. El bucle For Each Value...End es el bucle FPScript más rápido.

Disponibilidad

FlexPro View, Basic, Professional, Developer Suite

Ejemplo

El siguiente ejemplo busca un flanco y todos los máximos locales subsiguientes en una señal y transfiere las posiciones X de los eventos como serie de datos:

Arguments Signal

Dim Pos, Result

Pos = NextSlope(Signal, , 0.2, 0.2, 0.01, EVENT_POSITIVE)

While Pos <> Empty Do

    Result := Pos

    Pos = NextExtremum(Signal, Pos, 0.01, EVENT_POSITIVE)

End

Result

Véase también

Instrucción Do...While

Instrucción For...End

Instrucción For Each Element...End

Instrucción For Each Value...End

Instrucción For Each Column...End

Instrucción For Each Row...End