4D v16.3

Tant que...Fin tant que

Accueil

 
4D v16.3
Tant que...Fin tant que

Tant que...Fin tant que  


 

 

La syntaxe de la structure répétitive (ou boucle) Tant que...Fin tant que est la suivante :

 Tant que(Expression_booléenne)
    instruction(s)
 Fin tant que

Une boucle Tant que...Fin tant que exécute les instructions comprises entre Tant que et Fin tant que aussi longtemps que l’expression booléenne est VRAIE. Elle teste l’expression booléenne initiale et n’entre pas dans la boucle (et donc n'exécute aucune instruction) si l’expression est à FAUX.

Il est utile d’initialiser la valeur testée dans l’expression booléenne juste avant d’entrer dans la boucle Tant que. Initialiser la valeur signifie lui affecter un contenu approprié, généralement pour que l’expression booléenne soit VRAIE et que le programme entre dans la boucle.

La valeur de l'expression booléenne doit pouvoir être modifiée par un élément situé à l'intérieur de la boucle, sinon elle s'exécutera indéfiniment. La boucle suivante est sans fin car Infini est toujours VRAI :

 Infini:=Vrai
 Tant que(Infini)
 Fin tant que

Si vous vous retrouvez dans une telle situation (où une méthode s'exécute de manière incontrôlée), vous pouvez utiliser les fonctions de débogage de 4D et remonter à la source du problème. Pour plus d'informations sur ce point, reportez-vous à la section Débogueur.

Exemple  

 CONFIRMER("Ajouter un enregistrement?") ` Est-ce que l'utilisateur veut ajouter un enregistrement?
 Tant que(OK=1) ` Tant que l'utilisateur accepte
    AJOUTER ENREGISTREMENT([Table]` Ajouter un nouvel enregistrement
 Fin tant que ` Une boucle Tant que se termine toujours par Fin tant que

Dans cet exemple, la valeur de la variable système OK est définie par la commande CONFIRMER avant que le programme n’entre dans la boucle. Si l’utilisateur clique sur le bouton OK dans la boîte de dialogue de confirmation, la variable OK prend la valeur 1 et la boucle est exécutée. Dans le cas contraire, la variable OK prend la valeur 0 et la boucle est ignorée. Une fois que le programme entre dans la boucle, la commande AJOUTER ENREGISTREMENT permet de continuer à l’exécuter car elle met la variable système OK à 1 lorsque l’utilisateur sauvegarde l’enregistrement.
Lorsque l’utilisateur annule (ne valide pas) le dernier enregistrement, la variable système OK prend la valeur 0 et la boucle s’arrête.



Voir aussi  

Au cas ou...Sinon...Fin de cas
Boucle...Fin de boucle
Conditions et boucles
Repeter...Jusque
Si...Sinon...Fin de si

 
PROPRIÉTÉS 

Produit : 4D
Thème : Présentation du langage
Nom intl. : While...End while

 
HISTORIQUE 

 
UTILISATION DE L'ARTICLE

4D - Langage ( 4D v16)
4D - Langage ( 4D v16.1)
4D - Langage ( 4D v16.2)
4D - Langage ( 4D v16.3)