Instructions de boucle IF, Switch, For et While en C# [Exemples]

⚡ Résumé intelligent

En C#, les instructions conditionnelles et les boucles contrôlent le flux d'un programme en exécutant ou en répétant des blocs de code selon une logique prédéfinie. Les instructions `if`, `switch`, `while` et `for` permettent à un programme de prendre des décisions et d'itérer efficacement.

  • 🔀 Contrôle de flux: Les instructions conditionnelles modifient l'ordre d'exécution afin qu'un programme n'exécute que les instructions qui correspondent à sa logique.
  • instruction if : L'instruction if évalue une expression booléenne et exécute un bloc de code lorsqu'elle est vraie et un autre lorsqu'elle est fausse.
  • (I.e. Instruction Switch : L'instruction switch compare une valeur à plusieurs étiquettes de cas et utilise break pour s'arrêter une fois qu'une correspondance est trouvée.
  • (I.e. Boucle while : La boucle while répète un bloc d'instructions tant que sa condition reste vraie, ce qui convient à un nombre inconnu d'itérations.
  • (I.e. Pour la boucle: La boucle for initialise, teste et incrémente un compteur en une seule ligne, idéale lorsque le nombre de répétitions est connu.
  • 🤖 Aide à l'IA : GitHub Copilot rédige la logique if, switch et loop, tandis que ML.NET réutilise les mêmes conditions pour créer des branches dans les pipelines d'apprentissage automatique.

Instructions conditionnelles en C#

Contrôle de flux et instructions conditionnelles

Le contrôle de flux et les instructions conditionnelles sont disponibles dans n'importe quel langage de programmation pour modifier le flux d'un programme.

Par exemple, si quelqu'un souhaite exécuter uniquement un ensemble particulier d'instructions en fonction d'une certaine logique, le contrôle de flux et les instructions conditionnelles seront utiles.

Vous obtiendrez une meilleure compréhension en parcourant les différentes instructions disponibles en C#.

Veuillez noter que tout le code ci-dessous est créé dans le fichier Program.cs.

1) Si déclaration

L'instruction « if » permet d'évaluer une expression booléenne avant d'exécuter un ensemble d'instructions. Si l'expression est vraie, un ensemble d'instructions sera exécuté ; sinon, un autre ensemble sera exécuté.

Dans l'exemple ci-dessous, une comparaison est effectuée sur une variable appelée « valeur ». Si la valeur de la variable est inférieure à 10, une instruction sera exécutée ; sinon, une autre instruction sera exécutée.

Si déclaration

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DemoApplication
{
 class Program 
 {
  static void Main(string[] args) 
  {
   Int32 value = 11;
   
   if(value<10)
   {
    Console.WriteLine("Value is less than 10");
   }
   else
   {
    Console.WriteLine("Value is greater than 10");
   }
    Console.ReadKey();
  }
 }
}

Code Explication:-

  1. Nous définissons d’abord une variable appelée valeur et la définissons sur la valeur 11.
  2. Nous utilisons ensuite l'instruction 'if' pour vérifier si la valeur est inférieure à 10 de la variable. Le résultat sera soit vrai, soit faux.
  3. Si la condition if est évaluée comme vraie, nous envoyons alors le message « La valeur est inférieure à 10 » à la console.
  4. Si la condition if est évaluée comme fausse, nous envoyons alors le message « La valeur est supérieure à 10 » à la console.

Si le code ci-dessus est saisi correctement et que le programme est exécuté avec succès, la sortie suivante sera affichée.

Sortie :

Si déclaration

Nous pouvons clairement voir que l'instruction « if » a été évaluée comme fausse. Ainsi, le message « La valeur est supérieure à 10 » a été envoyé à la console.

2) Instruction de commutation

L'instruction switch est une amélioration de l'instruction « if ». Si vous avez plusieurs expressions qui doivent être évaluées en une seule fois, alors écrire plusieurs instructions « if » devient un problème.

L'instruction switch est utilisée pour évaluer une expression et exécuter différentes instructions en fonction du résultat de l'expression. Si une condition n’est pas évaluée comme vraie, l’instruction switch passera alors à la condition suivante et ainsi de suite.

Voyons comment cela fonctionne avec l'exemple ci-dessous. Ici, nous comparons à nouveau la valeur d'une variable appelée « valeur ». Nous vérifions ensuite si cette valeur est égale à 1, à 2 ou à une valeur totalement différente.

Instruction de commutation

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DemoApplication
{
 class Program
 {
  static void Main(string[] args) 
  {
   Int32 value=11;
   switch(value) 
   {
     case 1: Console.WriteLine("Value is 1");	
     break;
     case 2: Console.WriteLine("Value is 2");
     break;
     default: Console.WriteLine("value is different");
     break;
   }
  }
 }
}

Code Explication:-

  1. Nous définissons d'abord une variable appelée « valeur » et la définissons sur la valeur 11.
  2. Nous utilisons ensuite l'instruction « switch » pour vérifier la valeur de la variable « valeur ».
  3. Les instructions Case sont utilisées pour définir différentes conditions. En fonction des conditions, un ensemble d'instructions peut être exécuté. Une instruction switch peut avoir plusieurs conditions de cas. La première instruction case vérifie si la valeur de la variable est égale à 1.
  4. Si la première instruction case est vraie, alors le message « La valeur est 1 » est écrit sur la console.
  5. L'instruction break est utilisée pour rompre avec l'intégralité de l'instruction switch, une fois qu'une condition est vraie.
  6. La condition par défaut est une condition spéciale. Cela signifie simplement que si aucune expression de cas n'est évaluée comme vraie, exécutez l'ensemble d'instructions pour la condition par défaut.

Si le code ci-dessus est saisi correctement et que le programme est exécuté avec succès, la sortie suivante sera affichée. La sortie imprime la valeur par défaut « La valeur est différente », puisqu'aucune condition n'est satisfaite.

Sortie :

Instruction de commutation

3) Boucle tandis que

La boucle while est utilisée à des fins itératives. Supposons que si vous souhaitez répéter un certain ensemble d'instructions un certain nombre de fois, la boucle while est utilisée.

Dans notre exemple ci-dessous, nous utilisons l'instruction while pour afficher la valeur d'une variable « i ». L'instruction while est utilisée pour afficher la valeur 3 fois.

Boucle while

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DemoApplication
{
 class Program
 {
  static void Main(string[] args) 
  {
   Int32 value=3,i=0;
   
   while(i<value)
   {
    Console.WriteLine(i);
    i=i+1;
   }
    Console.ReadKey(); 
  }
 }
}

Code Explication:-

  1. Deux entiers les variables sont définis, l’un étant la valeur et l’autre le « i ». La variable value est utilisée comme limite supérieure à laquelle nous devons itérer notre instruction while. Et 'i' est la variable qui sera traitée lors de l'itération.
  2. Dans l'instruction while, la valeur de « i » est constamment vérifiée par rapport à la limite supérieure.
  3. Ici, nous affichons la valeur de « i » à la console. Nous incrémentons également la valeur de « i ».

Si le code ci-dessus est saisi correctement et que le programme est exécuté avec succès, la sortie suivante sera affichée.

Sortie :

Boucle while

Ici, vous pouvez voir que l'instruction while est exécutée 3 fois et incrémentée en même temps. Et à chaque fois, il affichait la valeur actuelle de la variable 'i'.

4) Pour boucle

La boucle « for » est également utilisée à des fins itératives. Par exemple, si vous souhaitez répéter un ensemble d'instructions un certain nombre de fois, vous utiliserez la boucle « for ».

Dans notre exemple ci-dessous, nous utilisons l'instruction « for » pour afficher la valeur d'une variable « i ». L'instruction 'for' est utilisée pour afficher la valeur 3 fois.

Pour boucle

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DemoApplication
{
 class Program
 {
  static void Main(string[] args) 
  {
   for(Int32 i=0;i<3;i++)
   {
    Console.WriteLine(i);
   }
    Console.ReadKey(); 
  
  }
 }
}

Code Explication:-

  1. Le mot-clé « for » est utilisé pour démarrer l’instruction « for loop ».
  2. Dans la « boucle for », nous définissons 3 choses. La première consiste à initialiser la valeur d'une variable, qui sera utilisée dans la « boucle for ».
  3. La seconde consiste à comparer la valeur du « i » à une limite supérieure. Dans notre cas, la limite supérieure est la valeur de 3 (i<3).
  4. Enfin, nous incrémentons la valeur de « i » en conséquence.
  5. Ici, nous affichons la valeur de « i » à la console.

Si le code ci-dessus est saisi correctement et que le programme est exécuté avec succès, la sortie suivante sera affichée.

Sortie :

Pour boucle

Ici, vous pouvez voir que l'instruction « for » est exécutée 3 fois. Et à chaque fois, il affichait la valeur actuelle de la variable 'i'.

FAQ

L'instruction `if` gère les intervalles et les conditions booléennes complexes, tandis que l'instruction `switch` compare une valeur à plusieurs étiquettes de cas prédéfinies. `switch` est plus clair pour de nombreuses valeurs discrètes, tandis que `if-else` convient mieux aux intervalles, aux variables multiples et aux opérateurs logiques.

Une instruction if imbriquée place une instruction if à l'intérieur d'une autre, de sorte que la condition interne n'est testée que si la condition externe est vraie. Cela permet à un programme de vérifier plusieurs conditions dépendantes, bien qu'une imbrication profonde réduise la lisibilité.

Une boucle while teste sa condition avant chaque itération ; elle peut donc ne jamais s'exécuter. Une boucle do-while, quant à elle, teste la condition après l'exécution de son corps ; elle s'exécute donc toujours au moins une fois, ce qui est particulièrement adapté aux menus et à la validation des entrées.

L'instruction `break` interrompt immédiatement une boucle ou une instruction `switch`, tandis que l'instruction `continue` ignore le reste de l'itération en cours et passe à la suivante. Toutes deux modifient le flux d'exécution, mais seule `break` met fin à la boucle.

L'opérateur ternaire ?: est une forme compacte de la structure if-else. Il évalue une condition, renvoie la première valeur lorsque la condition est vraie et la seconde valeur lorsqu'elle est fausse, produisant ainsi une affectation concise sur une seule ligne.

La boucle foreach parcourt chaque élément d'une collection (tableau ou liste) sans nécessiter d'index ni de compteur. Elle permet une lecture sécurisée de la collection et prévient les erreurs courantes de décalage d'une unité et de dépassement de capacité.

Oui. GitHub Copilot suggère des blocs if, switch, while et for à partir d'un commentaire ou d'un nom de méthode dans Visual Studio et VS Code. RevExaminez chaque suggestion pour vérifier les conditions correctes et les limites de boucle, car Copilot peut introduire des erreurs de décalage d'une unité.

Les pipelines ML.NET utilisent des instructions conditionnelles C# pour gérer les branchements en fonction des valeurs des caractéristiques et des boucles pour parcourir les lignes d'entraînement. La même logique if, switch et for prépare les données et achemine les prédictions.ping un flux de travail d'apprentissage automatique fortement typé.

Résumez cet article avec :