Exercice 1
Créez 5 fonctions anonymes qui prend en paramètre deux int et qui retourne un int.
Les fonctions anonymes doivent être conserver dans des variables portant les noms suivants:
- Addition (X + Y)
- Soustraction (X – Y)
- Multiplication (X * Y)
- Division (X / Y)
- Modulo (X % Y)
Créez une méthode “EffectuerOperation” qui prend en paramètre une fonction anonyme respectant le format en question ainsi que deux valeurs de type int. La méthode affichera également le résultat.
Démontrer une exécution de la méthode “EffectuerOperation” en lui passant en paramètre chacune des fonctions anonymes préalablement créée ainsi que les valeurs numériques suivante:
- 10 et 20 (Addition)
- 20 et 5 (Soustraction)
- 3 et 5 (Multiplication)
- 20 et 5 (Division)
- 20 et 3 (Modulo)
Exercice 2
Créez une fonction Delegate qui affiche “Bonjour le monde”. Faite une démonstration de son utilisation.
Exercice 3
Créez une fonction anonyme qui affiche “Bonjour le monde”. Faite une démonstration de son utilisation.
Exercice 4A
En utilisant une expression Lambda, créez une fonction anonyme qui fait la multiplication d’un paramètre de type int par 4 et qui retourne le résultat à la méthode appellante. Faite une démonstration de son utilisation.
Exercice 4B
Sans utiliser une expression Lambda, créez une fonction anonyme qui fait la multiplication d’un paramètre de type int par 4 et qui retourne le résultat à la méthode appellante. Faite une démonstration de son utilisation.
Exercice 5
Créez une methode ObtenirFonction() qui prend une chaine de caractère en paramètre.
Si la chaine de caractère est “addition”, la fonction retournera une fonction anonyme qui fait une addition de deux valeur de type int et qui retourne une valeur de type int.
Si la chaine de caractère est “soustraction”, la fonction retournera une fonction anonyme qui fait une soustraction de deux valeur de type int et qui retourne une valeur de type int.
Faite une démonstration de deux appels sur la méthode “ObtenirFonction()” en passant en paramètre le texte “addition” et “soustraction”, puis utiliser la fonction retourner pour l’appliquer à des valeurs numériques.
Afficher les résultat dans la console.
Par exemple
- Func<int,int,int> uneFonction = ObtenirFonction(“addition”);
- int reponse = uneFonction(12,13);
- Console.WriteLine(reponse);
Exercice 6A
Créez une méthode “NombreSurCondition()”. Cette méthode prend en paramètre une fonction anonyme prenant en paramètre un int et qui retourne un bool. Lorsque la méthode “NombreSurCondition()” est exécutée, elle affichera dans la console tous les nombre de 1 à 100 qui respecte la condition de la fonction passé en paramètre.
Exécuter votre méthode en lui donnant des fonctions anonymes qui effectue les vérifications suivantes:
- Le paramètre doit être impaire
- Le paramètre doit être un multiple de 8.
- Le paramètre doit être un multiple de 3.
Exercice 6B (Défi)
Modifier votre exercice 6a pour que la méthode “NombreSurCondition” accepte un tableau de condition. Un nombre doit satisfaire toutes les conditions pour être afficher. Exécutez la méthode en lui donnant les deux dernières conditions (Multiple de 8, et multiple de 3).
Exercice 7
Créez une fonction “AdditionnerSurCondition()”. Cette méthode prend deux paramètres:
- Un tableau de type int
- Une fonction anonyme (Prend un int en paramètre, retourne un bool en valeur de retour).
La méthode AdditionSurCondition doit être en mesure de retourner la somme de tous les nombres du tableau qui respecte une certaine condition.
Utiliser le tableau suivant: [12,34,54,23,5,45,6]
Créez les fonctions anonymes suivantes, et faites une démonstration d’un appel de “AdditionnerSurCondition()” avec chacune d’entre elles:
- Le paramètre doit être une valeur paire
- Le paramètre doit être un multiple de 5
- Le paramètre doit être inférieur à 10
- Le paramètre doit terminer par le chiffre 4.