Dans ce cours, nous allons aborder la notion de modularisation en programmation, qui est un concept fondamental pour rendre le code plus structuré, plus facile à comprendre et à maintenir. Ensuite, nous allons découvrir les fonctions en C#, leur définition, la manière dont elles prennent des paramètres et renvoient des valeurs. Enfin, nous terminerons avec des exercices pratiques pour modulariser des programmes complexes.
La modularisation en programmation consiste à diviser un programme en plusieurs sous-parties appelées modules. Chaque module ou fonction est conçu pour accomplir une tâche précise. Ce concept est essentiel pour améliorer la lisibilité, la maintenance, et la réutilisation du code.
En C#, une fonction est un bloc de code qui peut être appelé pour accomplir une tâche spécifique. Les fonctions permettent de regrouper des instructions qui peuvent être exécutées plusieurs fois sans répéter le code.
Structure d’une fonction en C# :
void
si la fonction ne renvoie rien.Exemple d’une fonction en C# :
public int Addition(int a, int b)
{
return a + b;
}
Dans cet exemple :
int
, ce qui signifie que la fonction renverra un nombre entier.Addition
.int a
et int b
.Pour appeler cette fonction, vous pouvez faire :
int resultat = Addition(5, 3); // resultat vaudra 8
Les paramètres permettent de passer des informations aux fonctions. Lorsque vous appelez une fonction, vous pouvez lui fournir des arguments qui seront utilisés dans les instructions de la fonction.
Il existe plusieurs façons de passer des paramètres dans une fonction en C# :
Exemple :
public void AfficherNombre(int nombre)
{
nombre = 10;
Console.WriteLine(nombre); // Affichera 10
}
int monNombre = 5;
AfficherNombre(monNombre);
Console.WriteLine(monNombre); // Affichera toujours 5 car la fonction ne modifie pas la valeur originale
ref
, la fonction reçoit une référence à la variable d’origine. Toute modification du paramètre affectera la valeur originale.Exemple :
public void ModifierNombre(ref int nombre)
{
nombre = 10;
}
int monNombre = 5;
ModifierNombre(ref monNombre);
Console.WriteLine(monNombre); // Affichera 10 car la valeur originale a été modifiée
Une fonction peut renvoyer une valeur après son exécution. Le mot-clé return
permet de spécifier quelle valeur renvoyer. Une fois que return
est appelé, la fonction s’arrête et renvoie cette valeur à l’appelant.
Exemple avec retour de valeur :
public string DireBonjour(string prenom)
{
return "Bonjour, " + prenom;
}
string message = DireBonjour("Gilblas");
Console.WriteLine(message); // Affichera : Bonjour, Gilblas
Créez une fonction qui effectue des opérations de base telles que l’addition, la soustraction, la multiplication et la division.
public double Calculatrice(double a, double b, string operation)
{
switch (operation)
{
case "+":
return a + b;
case "-":
return a - b;
case "*":
return a * b;
case "/":
return a / b;
default:
throw new InvalidOperationException("Opération non valide.");
}
}
Utilisation :
double resultat = Calculatrice(10, 5, "+"); // Affichera 15
Console.WriteLine(resultat);
Créez une fonction qui prend une liste de notes et retourne la note moyenne, la note la plus élevée et la note la plus basse.
public (double moyenne, double max, double min) StatistiquesNotes(double[] notes)
{
double moyenne = notes.Average();
double max = notes.Max();
double min = notes.Min();
return (moyenne, max, min);
}
Utilisation :
double[] notes = { 12.5, 15, 18, 10 };
var stats = StatistiquesNotes(notes);
Console.WriteLine($"Moyenne: {stats.moyenne}, Max: {stats.max}, Min: {stats.min}");
Créez des fonctions pour gérer un inventaire simple. La première fonction doit ajouter des articles, la deuxième doit les retirer, et la troisième doit afficher l’état de l’inventaire.
Dans cette leçon, nous avons exploré les concepts de modularisation et les fonctions en C#. Nous avons appris à définir des fonctions, à passer des paramètres, et à retourner des valeurs. Les exercices pratiques permettent de voir comment ces notions peuvent être appliquées pour organiser et simplifier des programmes complexes.
Laisser un commentaire :