public static Licorne Fusiiioooon(Licorne licorne1, Licorne licorne2) { return(new Licorne() { Couleur = licorne1.Couleur + licorne2.Couleur, ListePersonnalites = licorne1.ListePersonnalites.Concat(licorne2.ListePersonnalites).ToList() }); }
public static Licorne FaireUnBebe(Licorne licorne1, Licorne licorne2) { return(new Licorne() { Couleur = licorne1.Couleur + licorne2.Couleur }); }
public static List <Licorne> InvocationLicornes() { var res = new List <Licorne>(); var licorne1 = new Licorne() { Name = "Twilight Sparkle", Couleur = "Violet", Age = 10, ListePersonnalites = new List <string>() { "Studieuse", "Heroique" } }; var licorne2 = new Licorne() { Name = "Rarity", Couleur = "Blanc", Age = 12, ListePersonnalites = new List <string>() { "Précieuse" } }; var licorne3 = new Licorne() { Name = "Fluttershy", Couleur = "Jaune", Age = 10, ListePersonnalites = new List <string>() { "Timide", "Gentille" } }; var licorne4 = new Licorne() { Name = "Pinkie Pie", Couleur = "Rose", Age = 11, ListePersonnalites = new List <string>() { "Gloutonne" } }; var licorne5 = new Licorne() { Name = "Rainbow Dash", Couleur = "Bleu", Age = 11, ListePersonnalites = new List <string>() { "Rapide", "Moqueuse" } }; var licorne6 = new Licorne() { Name = "AppleJack", Couleur = "Marron", Age = 15, ListePersonnalites = new List <string>() { "Forte", "Travailleuse" } }; res.Add(licorne1); res.Add(licorne2); res.Add(licorne3); res.Add(licorne4); res.Add(licorne5); res.Add(licorne6); return(res); }
/// <summary> /// Les 3 premières licornes ont des bébés avec les 3 suivantes /// Et leur enfant a la couleur accolée des deux /// Exemple Licorne1 ("Bleu") a un enfant avec Licorne4 ("Rose") /// L'enfant doit être de couleur "BleuRose" /// </summary> /// <remarks>On peut utiliser la méthode Licorne.FaireUnBebe</remarks> public IEnumerable <Licorne> DesBebesLicornes() { // Version méthode d'extension return(ListeLicorne.Take(3).Zip(ListeLicorne.Skip(3), (l1, l2) => Licorne.FaireUnBebe(l1, l2))); // Pas de version déclarative... }
/// <summary> /// Créer une licorne qui a la couleur de toutes concatennées ainsi que l'ensemble de leurs personnalités /// </summary> /// <remarks>On peut utiliser la méthode Licorne.Fusion</remarks> /// <returns></returns> public Licorne MegaLicorne() { // Version méthode d'extension return(ListeLicorne.Aggregate((l1, l2) => Licorne.Fusiiioooon(l1, l2))); // Pas de version déclarative... }