Guide

Guide : Utiliser la Boucle While en VB.NET

La boucle While en VB.NET est utilisée pour répéter un bloc de code tant qu’une condition spécifiée reste vraie. Elle est idéale lorsque le nombre d’itérations n’est pas connu à l’avance et dépend d’une condition dynamique.


1. Syntaxe de la boucle While

While condition
    ' Instructions à exécuter
End While

Points clés :

  • La boucle continue de s’exécuter tant que la condition est vraie.
  • Si la condition est fausse dès le début, la boucle ne s’exécutera jamais.

2. Exemple de base

Compter de 1 à 5 avec While

Dim compteur As Integer = 1

While compteur <= 5
    Console.WriteLine("Valeur de compteur : " & compteur)
    compteur += 1 ' Incrémentation
End While

Sortie :

Valeur de compteur : 1
Valeur de compteur : 2
Valeur de compteur : 3
Valeur de compteur : 4
Valeur de compteur : 5

3. Comparaison avec une Boucle For

Contrairement à une boucle For, la boucle While est plus flexible pour des cas où le nombre d’itérations dépend de conditions dynamiques.

Exemple :

Dim x As Integer = 1
While x < 100
    x *= 2
    Console.WriteLine("x vaut maintenant : " & x)
End While

Sortie :

x vaut maintenant : 2
x vaut maintenant : 4
x vaut maintenant : 8
x vaut maintenant : 16
x vaut maintenant : 32
x vaut maintenant : 64
x vaut maintenant : 128

4. Condition dynamique avec Input

Vous pouvez utiliser la boucle While pour demander des entrées utilisateur jusqu’à ce qu’une condition soit remplie.

Exemple : Demander un mot de passe

Dim motDePasse As String = ""

While motDePasse <> "1234"
    Console.Write("Entrez le mot de passe : ")
    motDePasse = Console.ReadLine()
    If motDePasse <> "1234" Then
        Console.WriteLine("Mot de passe incorrect, réessayez.")
    End If
End While

Console.WriteLine("Accès autorisé.")

Sortie :

Entrez le mot de passe : test
Mot de passe incorrect, réessayez.
Entrez le mot de passe : 1234
Accès autorisé.

5. Interrompre une Boucle avec Exit While

Le mot-clé Exit While permet de quitter une boucle même si la condition reste vraie.

Exemple : Arrêter la boucle à une condition interne

Dim x As Integer = 1

While True ' Boucle infinie
    Console.WriteLine("x vaut : " & x)
    If x = 5 Then
        Exit While ' Quitte la boucle si x = 5
    End If
    x += 1
End While

Console.WriteLine("Boucle terminée.")

Sortie :

x vaut : 1
x vaut : 2
x vaut : 3
x vaut : 4
x vaut : 5
Boucle terminée.

6. Passer à l’itération suivante avec Continue While

Le mot-clé Continue While permet d’ignorer le reste des instructions et de passer directement à l’itération suivante.

Exemple : Ignorer les nombres pairs

Dim x As Integer = 0

While x <= 10
    x += 1
    If x Mod 2 = 0 Then
        Continue While ' Ignore les nombres pairs
    End If
    Console.WriteLine("Nombre impair : " & x)
End While

Sortie :

Nombre impair : 1
Nombre impair : 3
Nombre impair : 5
Nombre impair : 7
Nombre impair : 9
Nombre impair : 11

7. Combinaison de While avec une Autre Condition

Vous pouvez utiliser plusieurs conditions logiques avec la boucle While.

Exemple : Condition multiple avec AND

Dim x As Integer = 1
Dim y As Integer = 10

While x < 10 And y > 5
    Console.WriteLine($"x : {x}, y : {y}")
    x += 1
    y -= 1
End While

Sortie :

x : 1, y : 10
x : 2, y : 9
x : 3, y : 8
x : 4, y : 7
x : 5, y : 6
x : 6, y : 5

8. Boucle Infinie

Une boucle While peut devenir une boucle infinie si la condition est toujours vraie. Cela peut être intentionnel (comme un serveur en attente de requêtes) ou une erreur.

Exemple : Boucle infinie intentionnelle

While True
    Console.WriteLine("Appuyez sur Q pour quitter.")
    Dim input As String = Console.ReadLine()
    If input.ToUpper() = "Q" Then
        Exit While
    End If
End While

Console.WriteLine("Boucle terminée.")

9. Exemple Complet : Utiliser While avec un Tableau

Vous pouvez utiliser une boucle While pour parcourir un tableau.

Exemple :

Dim nombres() As Integer = {10, 20, 30, 40, 50}
Dim index As Integer = 0

While index < nombres.Length
    Console.WriteLine($"Index : {index}, Valeur : {nombres(index)}")
    index += 1
End While

Sortie :

Index : 0, Valeur : 10
Index : 1, Valeur : 20
Index : 2, Valeur : 30
Index : 3, Valeur : 40
Index : 4, Valeur : 50

10. Différence entre While et Do While

While

  • Vérifie la condition avant d’exécuter le code.
  • Si la condition est fausse dès le début, la boucle ne s’exécute jamais.
Dim x As Integer = 10
While x < 5
    Console.WriteLine("Ne s'exécutera pas")
End While

Do While

  • Exécute le code au moins une fois avant de vérifier la condition.
Dim x As Integer = 10
Do
    Console.WriteLine("S'exécute au moins une fois")
Loop While x < 5

Résumé des Commandes Utiles

CommandeDescription
Exit WhileQuitte immédiatement la boucle.
Continue WhilePasse directement à l’itération suivante.
While TrueCrée une boucle infinie (interrompue par Exit While).

La boucle While en VB.NET est un outil flexible pour exécuter un bloc de code tant qu’une condition reste vraie. Elle est idéale pour les scénarios où les itérations dépendent de données dynamiques ou d’une entrée utilisateur.

Exemple avec Do While en VB.NET

La boucle Do While est utilisée pour exécuter un bloc de code tant qu’une condition donnée reste vraie. Elle est différente de la boucle While, car elle garantit que le bloc de code s’exécute au moins une fois, même si la condition est fausse dès le début.


Syntaxe de Do While

Standard :

Do While condition
    ' Instructions à exécuter
Loop

Condition après le bloc (au moins une exécution garantie) :

Do
    ' Instructions à exécuter
Loop While condition

Exemple : Demander un mot de passe avec Do While

Scénario

Nous allons demander à l’utilisateur de saisir un mot de passe jusqu’à ce qu’il entre la bonne valeur.

Code :

Module Module1
    Sub Main()
        Dim motDePasse As String
        Dim motDePasseCorrect As String = "1234"

        Do
            Console.Write("Entrez le mot de passe : ")
            motDePasse = Console.ReadLine()

            If motDePasse <> motDePasseCorrect Then
                Console.WriteLine("Mot de passe incorrect. Réessayez.")
            End If
        Loop While motDePasse <> motDePasseCorrect

        Console.WriteLine("Mot de passe correct ! Accès autorisé.")
    End Sub
End Module

Sortie :

Entrez le mot de passe : test
Mot de passe incorrect. Réessayez.
Entrez le mot de passe : 4321
Mot de passe incorrect. Réessayez.
Entrez le mot de passe : 1234
Mot de passe correct ! Accès autorisé.

Exemple : Compter jusqu’à 10 avec Do While

Scénario

Nous allons compter de 1 à 10 en affichant chaque valeur à l’écran.

Code :

Module Module1
    Sub Main()
        Dim compteur As Integer = 1

        Do While compteur <= 10
            Console.WriteLine("Compteur : " & compteur)
            compteur += 1 ' Incrémentation
        Loop

        Console.WriteLine("Boucle terminée.")
    End Sub
End Module

Sortie :

Compteur : 1
Compteur : 2
Compteur : 3
Compteur : 4
Compteur : 5
Compteur : 6
Compteur : 7
Compteur : 8
Compteur : 9
Compteur : 10
Boucle terminée.

Exemple : Calculer une somme jusqu’à une limite

Scénario

Nous allons demander à l’utilisateur de saisir des nombres. La boucle continuera tant que la somme des nombres est inférieure à 100.

Code :

Module Module1
    Sub Main()
        Dim somme As Integer = 0

        Do
            Console.Write("Entrez un nombre : ")
            Dim nombre As Integer = Integer.Parse(Console.ReadLine())

            somme += nombre
            Console.WriteLine("Somme actuelle : " & somme)
        Loop While somme < 100

        Console.WriteLine("La somme a atteint ou dépassé 100. Fin de la boucle.")
    End Sub
End Module

Sortie (exemple d’interaction utilisateur) :

Entrez un nombre : 25
Somme actuelle : 25
Entrez un nombre : 50
Somme actuelle : 75
Entrez un nombre : 30
Somme actuelle : 105
La somme a atteint ou dépassé 100. Fin de la boucle.

Exemple : Boucle infinie avec interruption (Exit Do)

Scénario

Une boucle infinie continue de demander des entrées utilisateur jusqu’à ce que l’utilisateur entre “exit”.

Code :

Module Module1
    Sub Main()
        Dim saisie As String

        Do
            Console.Write("Entrez un texte (tapez 'exit' pour quitter) : ")
            saisie = Console.ReadLine()

            If saisie.ToLower() = "exit" Then
                Exit Do ' Quitte la boucle si "exit" est entré
            End If

            Console.WriteLine("Vous avez saisi : " & saisie)
        Loop

        Console.WriteLine("Programme terminé.")
    End Sub
End Module

Sortie :

Entrez un texte (tapez 'exit' pour quitter) : Bonjour
Vous avez saisi : Bonjour
Entrez un texte (tapez 'exit' pour quitter) : Test
Vous avez saisi : Test
Entrez un texte (tapez 'exit' pour quitter) : exit
Programme terminé.

Exemple : Boucle avec contrôle en bas (Do…Loop While)

Scénario

Nous affichons un message au moins une fois, puis continuons à afficher le message tant qu’une condition reste vraie.

Code :

Module Module1
    Sub Main()
        Dim x As Integer = 10

        Do
            Console.WriteLine("Valeur de x : " & x)
            x -= 2
        Loop While x > 0

        Console.WriteLine("Boucle terminée.")
    End Sub
End Module

Sortie :

Valeur de x : 10
Valeur de x : 8
Valeur de x : 6
Valeur de x : 4
Valeur de x : 2
Boucle terminée.

Différence entre Do While et Do...Loop While

TypeDescription
Do While conditionVérifie la condition avant d’exécuter le code.
Do...Loop While conditionExécute le code au moins une fois, puis vérifie la condition pour continuer.

Exemple comparatif :

Do While :

Dim x As Integer = 10

Do While x < 5
    Console.WriteLine("Ne s'exécutera pas")
Loop

Sortie : Rien, car la condition est fausse dès le début.

Do...Loop While :

Dim x As Integer = 10

Do
    Console.WriteLine("S'exécute au moins une fois")
Loop While x < 5

Sortie :

S'exécute au moins une fois

La boucle Do While en VB.NET est très utile lorsque vous avez besoin de répéter une tâche tant qu’une condition est vraie. Elle est particulièrement efficace pour des scénarios nécessitant des itérations dynamiques ou des validations basées sur des entrées utilisateur. Grâce à la variante Do…Loop While, vous pouvez garantir qu’un bloc de code s’exécute au moins une fois.

Autres articles

Fiche Ressources : Méthode de Lecture Paul...
La méthode de lecture Paul et Suzanne est une méthode...
Read more
Rédiger un Rapport d’Activité avec un Plan...
Le rapport d’activité avec un plan thématique est une méthode...
Read more
Guide : Les Différents Plans d'un Rapport...
Un rapport d'activité est un document clé pour présenter les...
Read more
AZ

Recent Posts

Modèle de Fiche de Parrainage dans Word

La fiche de parrainage est bien plus qu’un simple document administratif. Elle constitue un outil…

50 minutes ago

Fiche Méthode de La Tenue de Registres – Fiche Pratique

La tenue de registres est une méthode essentielle pour organiser et gérer des informations de…

14 heures ago

Fiche Méthode : Critique Littéraire – Modèle Word

La critique littéraire est une approche qui consiste à analyser, interpréter et évaluer un texte…

15 heures ago

Fiche Ressources : Méthode de Lecture Paul et Suzanne ( Modèle dans Word)

La méthode de lecture Paul et Suzanne est une méthode syllabique qui repose sur un…

15 heures ago

Modèle de Fiche de Travail Logistique Word et Excel ( à Imprimer et Automatisé)

La logistique est le moteur silencieux derrière la réussite de tout événement ou projet. Bien…

17 heures ago

Modèles et Techniques de Résolution des Problèmes : Template Excel

La résolution de problèmes est une compétence essentielle dans divers contextes professionnels et personnels. Ce…

20 heures ago

This website uses cookies.