Sauter la navigation

Documentation FlexPro 2025

While...Do...End

Exécute une série d'instructions pendant qu'une condition donnée est VRAIE.

Syntaxe

While Condition Do

  [Instructions]

End

La syntaxe de l'instruction While...Do...End se compose des éléments suivants :

Élément

Description

Condition

Une expression qui donne comme résultat TRUE, FALSE ou toute valeur numérique scalaire. Pour le résultat numérique, toutes les valeurs non égales à zéro sont considérées comme TRUE.

Instructions

Une ou plusieurs déclarations entre Do et End qui sont répétées tant que les résultats de la condition sont vrais.

Remarques

Si Condition a la valeur TRUE, toutes les instructions jusqu'à l'instruction End sont exécutées. Le programme revient ensuite à l'instruction While et vérifie si la condition est toujours TRUE. Dans ce cas, le processus est répété. Si Condition a la valeur FALSE, le programme poursuit l'exécution avec l'instruction qui suit l'instruction End.

Les instructionsWhile...Do...End peuvent être imbriquées comme vous le souhaitez. Une instruction End fait toujours référence à la dernière instruction While exécutée au même niveau.

Remarque :   Dans la mesure du possible, vous devez éviter les boucles sur les valeurs individuelles d'un ensemble de données. FPScript vous permet de calculer des ensembles de données complets en une seule instruction. Les boucles peuvent généralement être remplacées par des fonctions d'isolation d'événements en combinaison avec l'opérateur Index. La boucle For Each Value...End est la plus rapide des boucles FPScript.

Disponible dans

FlexPro View, Basic, Professional, Developer Suite

Exemple

L'exemple suivant recherche dans un signal une pente et tous les maxima locaux qui la suivent et renvoie les positions X des événements sous forme de série de données :

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

Voir aussi

Instruction Do...While

Instruction For...End

Instruction For Each Element...End

Instruction For Each Value...End

Instruction For Each Column...End

Instruction For Each Row...End

Documentation FlexPro 2025

While...Do...End

Exécute une série d'instructions pendant qu'une condition donnée est VRAIE.

Syntaxe

While Condition Do

  [Instructions]

End

La syntaxe de l'instruction While...Do...End se compose des éléments suivants :

Élément

Description

Condition

Une expression qui donne comme résultat TRUE, FALSE ou toute valeur numérique scalaire. Pour le résultat numérique, toutes les valeurs non égales à zéro sont considérées comme TRUE.

Instructions

Une ou plusieurs déclarations entre Do et End qui sont répétées tant que les résultats de la condition sont vrais.

Remarques

Si Condition a la valeur TRUE, toutes les instructions jusqu'à l'instruction End sont exécutées. Le programme revient ensuite à l'instruction While et vérifie si la condition est toujours TRUE. Dans ce cas, le processus est répété. Si Condition a la valeur FALSE, le programme poursuit l'exécution avec l'instruction qui suit l'instruction End.

Les instructionsWhile...Do...End peuvent être imbriquées comme vous le souhaitez. Une instruction End fait toujours référence à la dernière instruction While exécutée au même niveau.

Remarque :   Dans la mesure du possible, vous devez éviter les boucles sur les valeurs individuelles d'un ensemble de données. FPScript vous permet de calculer des ensembles de données complets en une seule instruction. Les boucles peuvent généralement être remplacées par des fonctions d'isolation d'événements en combinaison avec l'opérateur Index. La boucle For Each Value...End est la plus rapide des boucles FPScript.

Disponible dans

FlexPro View, Basic, Professional, Developer Suite

Exemple

L'exemple suivant recherche dans un signal une pente et tous les maxima locaux qui la suivent et renvoie les positions X des événements sous forme de série de données :

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

Voir aussi

Instruction Do...While

Instruction For...End

Instruction For Each Element...End

Instruction For Each Value...End

Instruction For Each Column...End

Instruction For Each Row...End