DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Syntaxe WLangage / Instructions structurées
  • Syntaxe équivalente
  • Code à exécuter
  • Pas d'incrémentation
  • Sortir d'une boucle de type POUR
  • Exécution de l'itération suivante
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Le bloc d'instructions est répété en modifiant une variable de contrôle puis en la comparant à une valeur limite, avant chaque début du bloc d'instructions.
Le bloc d'instructions est alors exécuté pour chacune des valeurs que prend successivement la variable de contrôle. La variable de contrôle reçoit la valeur initiale lors de la première entrée dans l'instruction POUR.
Une syntaxe optimisée est disponible : cette syntaxe permet de ne pas ré-évaluer la valeur limite et / ou la valeur du pas à chaque itération (utile par exemple dans le cas d'une répétition sur le nombre de ligne d'une table).
Exemple
POUR Indice = 1 À 10
MonTableau[Indice] = MaVariable + 10
FIN
POUR Indice = 10 À 1 PAS -1
MonTableau[Indice] = MaVariable + 10
FIN
POUR Indice = 1 À 5
Trace(Indice)
FIN
Info(Indice)    // Indice vaut 6
// Syntaxe optimisée
// Parcours des lignes du champ Table.
// Le nombre de lignes est calculé une seule fois
POUR Indice = 1 _À_ TABLE_MaTable.Occurrence
COL_MaCol[Indice].Couleur = iVertFoncé
FIN
Syntaxe
POUR <Variable de contrôle> = <Valeur initiale> A <Valeur finale> [PAS <x>]
...
FIN
<POUR> :
Signale le début du bloc d'instructions.
<Variable de contrôle> :
Variable simple de type scalaire (entier ou réel).
Il n'est pas nécessaire de déclarer cette variable. En effet, cette variable est déclarée automatiquement.
<Valeur initiale> :
Valeur initiale de la variable de contrôle (entier ou réel).
<Valeur finale> :
Valeur finale de la variable de contrôle (entier ou réel).
<PAS> :
Pas d'incrémentation (optionnel) de la variable de contrôle (par défaut, 1).
<x> :
Valeur (optionnelle) du pas d'incrémentation (type identique au type de la variable de contrôle).
<FIN> :
Signale la fin du bloc d'instructions.

Autres syntaxes disponibles Masquer les détails

POUR <Variable de contrôle> = <Valeur initiale> _A_ <Valeur finale> [PAS <x>]
...
FIN

POUR <Variable de contrôle> = <Valeur initiale> _A_ <Valeur finale> [_PAS_ <x>]
...
FIN

POUR <Variable de contrôle> = <Valeur initiale> A <Valeur finale> [_PAS_ <x>]
...
FIN
<_A_> :
Signale que la valeur finale doit être évaluée une seule fois
<_PAS_> :
Signale que le pas d'incrémentation doit être évalué une seule fois.
Remarques

Syntaxe équivalente

Il est également possible d'utiliser la syntaxe suivante :
POUR <Variable de contrôle> = <Valeur initiale> A <Valeur finale> [PAS <x>]; ... ; FIN
Le point virgule permet de séparer les différentes lignes.

Code à exécuter

Le code à exécuter est placé entre les instructions POUR et FIN.

Pas d'incrémentation

Le pas d'incrémentation de l'instruction POUR doit être constant. Si le pas d'incrémentation est susceptible de varier à chaque répétition, un warning apparaît lors de la compilation du projet.

Sortir d'une boucle de type POUR

Plusieurs instructions sont possibles :
  • RETOUR : Sortie de la boucle POUR et sortie du traitement (ou de la procédure) en cours.
  • RENVOYER : Renvoi d'un compte-rendu au traitement appelant. Sortie de la boucle POUR et sortie du traitement (ou de la procédure) en cours.
  • SORTIR : Sortie de la boucle POUR et exécution de la suite du traitement en cours.
La fonction Ferme permet de sortir de la boucle POUR et de fermer la fenêtre en cours.
Attention : Il n'est pas possible d'utiliser les instructions RETOUR et RENVOYER dans un même traitement.

Exécution de l'itération suivante

Pour exécuter directement l'itération suivante sans terminer le code de l'itération en cours, utilisez l'instruction Continuer :
POUR <Variable de contrôle> = <Valeur initiale> A <Valeur finale> [PAS <x>]
...
SI <Condition> ALORS CONTINUER   // Retour au mot-clé POUR
...
FIN
Dans ce cas, la variable de contrôle est automatiquement incrémentée.
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 25/05/2022

Signaler une erreur ou faire une suggestion | Aide en ligne locale