Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2114 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Les boucles en VB

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Les boucles en VB

n°1846412
picollo
Posté le 03-02-2009 à 12:20:25  profilanswer
 

Bonjour
 
Lorsque j'étais à l'école (début des années 90), j'ai eu des cours de programmation en Basic (oui, oui j'ai bien dit Basic et pas VisualBasic);
en Pascal (Turbo Pascal version 6 si je me souviens bien) et en Cobol, malheureusement pas de C  et encore moins de C++.
 
Ici dernièrement, j'ai eu une envie de me remettre à la programmation et j'ai donc téléchargé Visual Studio 2008 Express Edition.
J'ai donc commencé par "apprendre VB" mais arrivé aux boucles "Do While" et "Do Until", je coince un peu.
 
Ce n'est pas que je ne comprends leurs fonctionnement (enfin j'espère), mais je ne vois pas la différence entre les deux.
 
Différence qui me semble bien visible en Pascal.
 
En voyant les noms "While" et "Until", je pensais qu'ils fonctionnaient comme en Pascal.
 
En Pascal, avec la boucle "While", on teste la condition au début et donc il se peut que les intructions de la boucle ne soit jamais exécutées.
Tandis qu'avec la boucle "Until", on exécute au moins une fois les instructions de la boucle et ensuite on teste la condition.
 
Mais ici en VB, le teste de la condition s'effectue au début et donc les instructions de la boucle peuvent ne pas être exécutée, quelque soit la boucle.
 
Les deux boucles, "Do While" et "Do Until", fonctionnent t'elles comme une boucle "While" en Pascal, ou est ce moi qui n'y comprend absolument plus rien ?
Dans quel cas utilise t'on l'une ou l'autre ?
En Pascal, si on sait que (dans la majorité des cas) l'on devra exécuté au moins une fois les instructions de la boucle, on utilise la "Repeat Until"
mais dans le cas contraire on utilise la "While".
 
Merci d'avance
 
Salutations
 
Fred
 

mood
Publicité
Posté le 03-02-2009 à 12:20:25  profilanswer
 

n°1846435
olivthill
Posté le 03-02-2009 à 13:05:27  profilanswer
 

Pour expliquer, prenons un exemple traduit en français :
 
- Do Until EOF(f) = Faire jusqu'à ce que la fin du fichier soit atteinte.
- Do While Not EOF(f) = Faire tant que la fin du fichier n'est pas atteinte.
 
La diffférence est que la condition est inversée.  
 
A propos de l'emplacement de la condition, il existe deux cas :
 
1. Test au début
Do { While | Until } condition
    [ statements ]
    [ Exit Do ]
    [ statements ]
Loop
 
2. Test à la fin
Do
    [ statements ]
    [ Exit Do ]
    [ statements ]
Loop { While | Until } condition
 
(Personnellement, je n'utilise que la boucle For car je suis certain de ne jamais avoir de boucle infinie, et je n'ai pas à me poser la question de l'emplacement du test. Au besoin, je réalise un test dans le corps de la boucle, par exemple If EOF(f) Exit For End If.)


Message édité par olivthill le 03-02-2009 à 13:06:37
n°1846831
picollo
Posté le 03-02-2009 à 20:26:00  profilanswer
 

Merci olivthill
 
Je ne savais pas que l'on pouvait faire  
Do
    [ statements ]
    [ Exit Do ]
    [ statements ]
Loop { While | Until } condition  
 
J'utiliserai certainement Do While ...Loop et DO ...Loop Until par facilité, ca correspondra plus à ce que j'ai connu avec Pascal
 
Merci de m'avoir éclairer


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Les boucles en VB

 

Sujets relatifs
Variables, formulaires et bouclesaddition de champs sous VB
[VB.NET] Connexion BDD Access ne se ferme pas apres vérificationsMenu sous VB 208 Express
[VB.NET] personnaliser un bouton parcourirprogramme en VB qui coince
Probleme Ecriture base de registre VBRequette Select dans VB et ACCESS
[VB] utilisation d'une liste pour traiter des donnés[C# - VB.NET - SQL] arrondir un prix (sans virgule)!
Plus de sujets relatifs à : Les boucles en VB


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR