Help boucles

cs_cricri_forever Messages postés 49 Date d'inscription mercredi 28 septembre 2005 Statut Membre Dernière intervention 31 mars 2006 - 8 nov. 2005 à 12:33
cs_jeanmarc Messages postés 34 Date d'inscription mardi 18 juin 2002 Statut Membre Dernière intervention 22 novembre 2005 - 8 nov. 2005 à 18:39
quelq'un aurait une explication niveau debutant pour les boucle while et do ... loop until ???

merci bienhttp://bicrossmouscron.skyblog.com

2 réponses

cs_corsica Messages postés 147 Date d'inscription lundi 13 mai 2002 Statut Membre Dernière intervention 15 février 2010
8 nov. 2005 à 16:55
Le While xx ... Wend signifie "TantQue" , le Do ... Loop Until xxx "Jusqu'à ce que"

La plus grande différence tient dans le fait que avec un do until on peut conditionner un truc pour faire l'occurence 1 fois , en effet le test pour savoir si on continue la boucle est fait en fin de boucle alors qu'avec le while on teste dès le début pour savoir si on rentre dans la boucle ....

Je creuse pour te faire un bout de code qui te parlera mieux que ça !!!
0
cs_jeanmarc Messages postés 34 Date d'inscription mardi 18 juin 2002 Statut Membre Dernière intervention 22 novembre 2005
8 nov. 2005 à 18:39
Bonjour,
1) Je lis tout mon fichier, le séparateur de mot est " " (espace)

Set ObjTextStream = Fso.OpenTextFile(Path & Fichier_Entree1, 1)
Do While Not ObjTextStream.AtEndOfStream
strtmp = split(ObjTextStream.readline," ")
For i = 0 to Ubound(strtmp)
' MsgBox "lecture du mot " & strtmp(i)
If strtmp(i) = "Incoming" Then
Entree = Entree + 1
End If
If strtmp(i) = "Outgoing" Then
Sortie = Sortie + 1
End If
Next
Loop
ObjTextStream.Close
================================


[ condition]</italique>]
[ [ statements] ]
[ Exit Do]
[[ statements]]
Loop


Vous pouvez aussi utiliser la syntaxe suivante :

Do
[[ statements]]
[Exit Do]
[[ statements]]
Loop [{While | Until} [ condition]]


Arguments


* : condition

Expression numérique ou expression de chaîne qui est True ou False. Si condition est Null, l'élément condition est traité comme False.

* : statements

<DD>Une ou plusieurs instructions qui sont répétées tant que l'élément condition est True, ou jusqu'à ce qu'il le devienne.


Notes


L'instruction Exit Do ne peut être utilisée que dans une structure de contrôle Do...Loop afin de proposer une solution alternative pour quitter une instruction Do...Loop. Vous pouvez placer autant d'instructions Exit Do que vous voulez n'importe où dans l'instruction Do...Loop. Souvent utilisée avec l'évaluation d'une condition (par exemple, l'instruction If...Then), l'instruction Exit Do transfère le contrôle à l'instruction qui suit immédiatement Loop.


Quand elle est utilisée à l'intérieur d'instructions Do...Loop imbriquées, l'instruction Exit Do transfère le contrôle à la boucle située au niveau d'imbrication supérieur à celui de la boucle dans laquelle elle se déroule.


L'exemple ci-dessous illustre l'utilisation de l'instruction Do...Loop :

Do Until
DefResp = vbNo
MyNum = Int (6 * Rnd + 1) ' Génère un entier aléatoire entre 1 et 6.
DefResp = MsgBox (MyNum & " Voulez-vous un autre nombre?", vbYesNo)
Loop

Dim Check, Counter
Check True: Counter 0 ' Initialise les variables.
 Do 
' Boucle externe.
Do While
Counter < 20 ' Boucle interne.
Counter = Counter + 1 ' Incrémente le compteur.
If Counter = 10 Then ' Si la condition vaut True...
Check = False ' Affecte la valeur False à l'indicateur.
 Exit Do 
' Quitte la boucle interne.
End If
Loop
Loop Until
Check = False ' Quitte immédiatement la boucle externe.

2) Je n'ai jamais utilisé le While..Wend !!!!!




[mk:@MSITStore:D:\Mes%20scripts%20vbs\sources-vbs\SCRIPT56.CHM::/html/vsstmdo.htm Do...Loop, instruction
]

<!--Footer Start-->



Caractéristiques requises


[mk:@MSITStore:D:\Mes%20scripts%20vbs\sources-vbs\SCRIPT56.CHM::/html/vtoriversioninformation.htm Version 1
]

<!--NONSCROLLING BANNER END-->


Exécute une série d'instructions tant qu'une condition donnée est True.

While [ condition]
Version [[ statements]]
Wend


Arguments


* : condition

Expression numérique ou expression de chaîne qui produit la valeur True ou False. Si condition est Null, l'élément condition est traité comme étant False.

* : statements

<DD>Une ou plusieurs instructions exécutées alors que condition est True.


Notes


Si condition est True, toutes les instructions contenues dans statements sont exécutées jusqu'à ce que l'instruction Wend soit rencontrée. L'instruction While prend ensuite le contrôle et l'élément condition est à nouveau vérifié. Si condition est toujours True, le processus est répété. Si condition n'est pas True, l'exécution reprend en commençant par l'instruction succédant à l'instruction Wend.


Des boucles While...Wend peuvent être imbriquées à tous les niveaux. Chaque instruction Wend correspond à l'instruction While la plus récente.


Remarque L'instruction Do...Loop fournit un moyen plus structuré et plus souple d'effectuer une itération en boucle.

L'exemple ci-dessous illustre l'utilisation de l'instruction While...Wend :

Dim Counter
Counter = 0 ' Initialiser la variable.
 While 
Counter < 20 ' Teste la valeur du compteur.
Counter = Counter + 1 ' Incrémente le compteur.
Alert Counter
Wend
' Fin de la boucle While lorsque Counter > 19.
0
Rejoignez-nous