public Projet(string nom, string sujet, string sujetLibre, TypeProjet typeProjet, List <int> anneesEtudes, List <Matiere> matieres, AnneeScolaire anneeScolaire, List <Eleve> etudiants, Eleve chefDeProjet, List <Eleve> developpeurs, List <Eleve> maquetteurs, List <Eleve> poleFacteurHumain, Personne client, List <AutreIntervenant> tuteurs, List <Livrable> livrables, DateTime dateDebut, DateTime dateFin, List <string> motsClefs) { Nom = nom; Sujet = sujet; SujetLibre = sujetLibre; TypeProjet = typeProjet; AnneesEtudes = anneesEtudes; Matieres = matieres; List <int> promos = new List <int> { }; foreach (int anneeEtude in anneesEtudes) { promos.Add(anneeScolaire.AnneeFin + anneeEtude); } Promos = promos; AnneeScolaire = anneeScolaire; int cpt = 0; foreach (Eleve etudiant in etudiants) { cpt++; } foreach (AutreIntervenant tuteur in tuteurs) { cpt++; } if (client != null) { cpt++; } NbPersonnesImpliquees = cpt; Etudiants = etudiants; ChefDeProjet = chefDeProjet; Developpeurs = developpeurs; Maquetteurs = maquetteurs; PoleFacteurHumain = poleFacteurHumain; Client = client; Tuteurs = tuteurs; Livrables = livrables; DateDebut = dateDebut; DateFin = dateFin; MotsClefs = motsClefs; }
static void Main(string[] args) { Program program = new Catalogue_ENSC.Program(); AnneeScolaire cetteAnnee = new AnneeScolaire("2019-2020", 2019, 2020, program); AnneeScolaire annee19 = new AnneeScolaire("2018-2019", 2018, 2019, program); AnneeScolaire annee18 = new AnneeScolaire("2017-2018", 2017, 2018, program); AnneeScolaire annee17 = new AnneeScolaire("2016-2017", 2016, 2017, program); AnneeScolaire annee16 = new AnneeScolaire("2015-2016", 2015, 2016, program); AnneeScolaire anneeProchaine = new AnneeScolaire("2020-2021", 2020, 2021, program); Eleve iciattoni = new Eleve("iciattoni", "Ines", "Ciattoni", 2022, false, 0, "elle", program); Eleve cbrissaud = new Eleve("cbrissaud", "Cloe", "Brissaud", 2022, false, 0, "elle", program); Eleve llavenseau = new Eleve("llavenseau", "Louis", "Lavenseau", 2022, false, 0, "il", program); Eleve tholstein = new Eleve("tholstein", "Thomas", "Holstein", 2022, false, 0, "il", program); Eleve lthomasson = new Eleve("lthomasson", "Lucie", "Thomasson", 2022, false, 0, "elle", program); Eleve msille = new Eleve("msille", "Marie", "Sille", 2022, false, 0, "elle", program); Eleve jgadeau = new Eleve("jgadeau", "Juliette", "Gadeau", 2022, false, 0, "elle", program); Eleve motheguy = new Eleve("motheguy", "Marion", "Otheguy", 2022, false, 0, "elle", program); Eleve acorbeau = new Eleve("acorbeau", "Anne", "Corbeau", 2019, false, 0, "elle", program); Eleve tmerlin = new Eleve("tmerlin", "Tom", "Merlin", 2019, false, 0, "il", program); Eleve aanne = new Eleve("aanne", "Arthur", "Anne", 2019, false, 0, "elle", program); Eleve gmartin = new Eleve("gmartin", "Guillaume", "Martin", 2019, false, 0, "il", program); Eleve jguyet = new Eleve("jguyet", "Jean", "Guyet", 2019, false, 0, "il", program); Eleve ghute = new Eleve("ghute", "Guy", "Hute", 2019, false, 0, "il", program); Eleve tfaure = new Eleve("tfaure", "Thomas", "Faure", 2022, false, 0, "il", program); Eleve slaur = new Eleve("slaur", "Simon", "Laur", 2022, false, 0, "il", program); Eleve jbriand = new Eleve("jbriand", "Julien", "Briand", 2022, false, 0, "il", program); Eleve nchauvier = new Eleve("nchauvier", "Nathan", "Chauvier", 2022, false, 0, "il", program); Eleve mzuliani = new Eleve("mzuliani", "Mattheo", "Zuliani", 2022, false, 0, "il", program); Eleve tarrachquesne = new Eleve("tarrachquesne", "Thomas", "Arrachquesne", 2022, false, 0, "il", program); Eleve mdhellin = new Eleve("mzuliani", "Mattheo", "Zuliani", 2022, false, 0, "il", program); Eleve vleroy = new Eleve("vleroy", "Victor", "Leroy", 2022, false, 0, "il", program); Eleve tconstans = new Eleve("tconstans", "Thea", "Constans", 2022, false, 0, "il", program); Eleve tmorassin = new Eleve("tmorassin", "Thibault", "Morassin", 2022, false, 0, "il", program); Livrable rapport = new Livrable("rapport", program); Livrable produit = new Livrable("produit", program); Livrable codeSource = new Livrable("code source", program); Livrable soutenance = new Livrable("soutenance", program); AutreIntervenant aroc = new AutreIntervenant("aroc", "Aline", "Roc", "professeur", "elle", program); AutreIntervenant pfavier = new AutreIntervenant("pfavier", "Pierre-Alexandre", "Favier", "professeur", "il", program); AutreIntervenant bprebot = new AutreIntervenant("bprebot", "Baptiste", "Prebot", "professeur", "il", program); AutreIntervenant gkurtag = new AutreIntervenant("gkurtag", "Gyorgy", "Kurtag", "intervenant externe ", "il", program); AutreIntervenant saries = new AutreIntervenant("saries", "Serge", "Aries", "professeur", "il", program); AutreIntervenant bleblanc = new AutreIntervenant("bleblanc", "Benoit", "Leblanc", "professeur", "il", program); AutreIntervenant tletouzet = new AutreIntervenant("tletouzet", "Theodore", "Letouzet", "professeur", "il", program); AutreIntervenant bpesquet = new AutreIntervenant("bpesquet", "Baptiste", "Pesquet", "professeur", "il", program); AutreIntervenant eclermont = new AutreIntervenant("eclermont", "Edwige", "Clermont", "professeur", "elle", program); AutreIntervenant csemal = new AutreIntervenant("csemal", "Catherine", "Semal", "professeur", "elle", program); AutreIntervenant rgay = new AutreIntervenant("rgay", "Roland", "Gay", "intervenant externe", "il", program); Matiere commweb = new Matiere("communication_web", "CO6SFCWO", "sciences fondamentales", "C06SFON0", program); Matiere introInfo = new Matiere("introduction_a_l'informatique", "CO6SFPA0", "sciences fondamentales", "C06SFON0", program); Matiere transdi = new Matiere("projet_transdisciplinaire", "CO5PRTD0", "projets", "CO5PRST0", program); Matiere ia1 = new Matiere("intelligence_artificielle_1", "CO7SCIA0", "ingenierie cognitique", "C07SCOG0", program); Matiere infoIndivi = new Matiere("projet_informatique_indivuduel", "C0ESFPI0", "sciences fondamtentales", "CO8SFON0", program); Matiere systemeCogni = new Matiere("systemes_cognitifs", "C09SYCO0", "systemes cognitifs", "C09SYCO0", program); TypeProjet projetCommunicationWeb = new TypeProjet("projet communication web", null, "impose", new List <int> { 1 }, new List <Matiere> { commweb }, new List <AutreIntervenant> { aroc, eclermont, bprebot }, new List <Livrable> { rapport, produit, codeSource }, new DateTime(2000, 1, 25), new DateTime(2000, 3, 28), new List <string> { "site web", "programmation web" }); TypeProjet projetIntroductionALaProgrammation = new TypeProjet("projet introduction a la programmation", "codage du jeu motus", "impose", new List <int> { 1 }, new List <Matiere> { introInfo }, new List <AutreIntervenant> { pfavier, eclermont, bpesquet }, new List <Livrable> { rapport, produit, codeSource }, new DateTime(2000, 11, 12), new DateTime(2000, 1, 16), new List <string> { "motus", "programmation" }); TypeProjet projetIntelligenceArtificielle = new TypeProjet("projet intelligence artificielle", null, "impose", new List <int> { 2 }, new List <Matiere> { ia1 }, new List <AutreIntervenant> { bpesquet, bprebot }, new List <Livrable> { rapport, produit, codeSource }, new DateTime(2000, 10, 29), new DateTime(2000, 12, 22), new List <string> { "intelligence artificielle", "programmation" }); TypeProjet projetInformatiqueindividuel = new TypeProjet("projet informatique individuel", null, "libre", new List <int> { 2 }, new List <Matiere> { infoIndivi }, new List <AutreIntervenant> { saries, bleblanc, tletouzet, bpesquet }, new List <Livrable> { rapport, produit, codeSource }, new DateTime(2000, 1, 9), new DateTime(2000, 1, 9), new List <string> { "programmation" }); TypeProjet projetEtudeCerveau = new TypeProjet("projet etude cerveau", null, "impose", new List <int> { 2 }, new List <Matiere> { systemeCogni }, new List <AutreIntervenant> { pfavier }, new List <Livrable> { rapport }, new DateTime(2000, 10, 12), new DateTime(2000, 12, 16), new List <string> { "cerveau", "cognitif" }); TypeProjet projetTransdi = new TypeProjet("projet transdisciplinaire", null, "liste", new List <int> { 1 }, new List <Matiere> { transdi }, null, new List <Livrable> { produit, soutenance }, new DateTime(2000, 9, 12), new DateTime(2000, 5, 25), null); Projet harryPottest = new Projet("Harrypotest", "création d'un site de quizz", "impose", projetCommunicationWeb, new List <int> { 1 }, new List <Matiere> { commweb }, cetteAnnee, new List <Eleve> { cbrissaud, iciattoni }, null, new List <Eleve> { cbrissaud, iciattoni }, new List <Eleve> { }, new List <Eleve> { }, null, new List <AutreIntervenant> { aroc, eclermont, bprebot }, new List <Livrable> { rapport, produit, codeSource }, new DateTime(2020, 1, 25), new DateTime(2020, 3, 28), new List <string> { "site web", "programmation web", "harry potter" }); Projet motusLavenseauHolstein = new Projet("Motus Lavenseau et Holstein", "Codage du jeu Motus", "impose", projetIntroductionALaProgrammation, new List <int> { 1 }, new List <Matiere> { introInfo }, cetteAnnee, new List <Eleve> { llavenseau, tholstein }, null, new List <Eleve> { llavenseau, tholstein }, new List <Eleve> { }, new List <Eleve> { }, null, new List <AutreIntervenant> { pfavier, eclermont, bpesquet }, new List <Livrable> { rapport, produit, codeSource }, new DateTime(2019, 11, 12), new DateTime(2020, 1, 16), new List <string> { "programmation", "motus", "jeu" }); Projet motusBrissaudFaure = new Projet("Motus Brissaud et Faure", "Codage du jeu Motus", "impose", projetIntroductionALaProgrammation, new List <int> { 1 }, new List <Matiere> { introInfo }, cetteAnnee, new List <Eleve> { cbrissaud, tfaure }, null, new List <Eleve> { cbrissaud, tfaure }, new List <Eleve> { }, new List <Eleve> { }, null, new List <AutreIntervenant> { pfavier, eclermont, bpesquet }, new List <Livrable> { rapport, produit, codeSource }, new DateTime(2019, 11, 12), new DateTime(2020, 1, 16), new List <string> { "programmation", "motus", "jeu" }); Projet motusLaurBriand = new Projet("Motus Briand et Laur", "Codage du jeu Motus", "impose", projetIntroductionALaProgrammation, new List <int> { 1 }, new List <Matiere> { introInfo }, cetteAnnee, new List <Eleve> { jbriand, slaur }, null, new List <Eleve> { jbriand, slaur }, new List <Eleve> { }, new List <Eleve> { }, null, new List <AutreIntervenant> { pfavier, eclermont, bpesquet }, new List <Livrable> { rapport, produit, codeSource }, new DateTime(2019, 11, 12), new DateTime(2020, 1, 16), new List <string> { "programmation", "motus", "jeu" }); Projet motusChauvierZuliani = new Projet("Motus Chauvier et Zuliani", "Codage du jeu Motus", "impose", projetIntroductionALaProgrammation, new List <int> { 1 }, new List <Matiere> { introInfo }, cetteAnnee, new List <Eleve> { nchauvier, mzuliani }, null, new List <Eleve> { nchauvier, mzuliani }, new List <Eleve> { }, new List <Eleve> { }, null, new List <AutreIntervenant> { pfavier, eclermont, bpesquet }, new List <Livrable> { rapport, produit, codeSource }, new DateTime(2019, 11, 12), new DateTime(2020, 1, 16), new List <string> { "programmation", "motus", "jeu" }); Projet blackout = new Projet("Blackout", "évaluation UX et amélioration d'un serious game", "liste", projetTransdi, new List <int> { 1 }, new List <Matiere> { transdi }, cetteAnnee, new List <Eleve> { cbrissaud, lthomasson, msille, jgadeau, motheguy }, cbrissaud, new List <Eleve> { lthomasson, motheguy }, new List <Eleve> { msille, jgadeau }, new List <Eleve> { cbrissaud, msille, jgadeau }, gkurtag, new List <AutreIntervenant> { csemal }, new List <Livrable> { soutenance, produit }, new DateTime(2019, 9, 12), new DateTime(2020, 5, 25), new List <string> { "UX design", "serious game" }); Projet galaxieux = new Projet("Galax'ieux", "développement d'un outil de reconnaissance de cartes/synthèse vocale pour malvoyants", "liste", projetTransdi, new List <int> { 1 }, new List <Matiere> { transdi }, cetteAnnee, new List <Eleve> { llavenseau, tconstans, tmorassin, vleroy, mdhellin, tconstans, tarrachquesne }, tconstans, new List <Eleve> { llavenseau, vleroy, mdhellin, tarrachquesne }, null, new List <Eleve> { tconstans, tmorassin }, rgay, new List <AutreIntervenant> { csemal }, new List <Livrable> { soutenance, produit }, new DateTime(2019, 9, 12), new DateTime(2020, 5, 25), new List <string> { "UX design", "serious game" }); Projet taquin = new Projet("Taquin", "développement d'un jeu de taquin", "impose", projetIntelligenceArtificielle, new List <int> { 2 }, new List <Matiere> { ia1 }, annee18, new List <Eleve> { acorbeau, tmerlin }, null, new List <Eleve> { acorbeau, tmerlin }, new List <Eleve> { }, new List <Eleve> { }, null, new List <AutreIntervenant> { bpesquet, bprebot }, new List <Livrable> { rapport, produit, codeSource }, new DateTime(2017, 10, 29), new DateTime(2018, 12, 22), new List <string> { "programmation", "IA" }); Projet rainbow = new Projet("Rainbow", "développement d'un jeu de plateau", "libre", projetInformatiqueindividuel, new List <int> { 2 }, new List <Matiere> { infoIndivi }, annee18, new List <Eleve> { aanne, gmartin }, null, new List <Eleve> { aanne, gmartin }, new List <Eleve> { }, new List <Eleve> { }, null, new List <AutreIntervenant> { saries, bleblanc, tletouzet, bpesquet }, new List <Livrable> { rapport, produit, codeSource }, new DateTime(2018, 1, 9), new DateTime(2018, 4, 15), new List <string> { "programmation", "individuel" }); Projet cerveauGuyHute = new Projet("Etude du cerveau Guyet et Hute", "Etude du cerveau", "impose", projetEtudeCerveau, new List <int> { 3 }, new List <Matiere> { systemeCogni }, annee19, new List <Eleve> { jguyet, ghute }, null, new List <Eleve> { }, new List <Eleve> { }, new List <Eleve> { jguyet, ghute }, null, new List <AutreIntervenant> { pfavier }, new List <Livrable> { rapport }, new DateTime(2018, 10, 12), new DateTime(2018, 12, 16), new List <string> { "cognitif", "cerveau" }); Repertoire repertoire = new Repertoire(new List <Projet> { harryPottest, motusLavenseauHolstein, motusBrissaudFaure, motusChauvierZuliani, motusLaurBriand, blackout, galaxieux, taquin, rainbow, cerveauGuyHute }, new List <TypeProjet> { projetCommunicationWeb, projetIntroductionALaProgrammation, projetIntelligenceArtificielle, projetInformatiqueindividuel, projetEtudeCerveau, projetTransdi }, new List <Matiere> { commweb, introInfo, transdi, ia1, infoIndivi, systemeCogni }, new List <Eleve> { llavenseau, cbrissaud, iciattoni, tholstein, lthomasson, msille, jgadeau, motheguy, acorbeau, tmerlin, aanne, gmartin, jguyet, ghute, tfaure, slaur, jbriand, nchauvier, mzuliani, tarrachquesne, mdhellin, vleroy, tconstans, tmorassin }, new List <AutreIntervenant> { bpesquet, eclermont, csemal, aroc, pfavier, bprebot, gkurtag, saries, bleblanc, tletouzet, rgay }, new List <AnneeScolaire> { annee16, annee17, annee18, annee19, cetteAnnee, anneeProchaine }, new List <Livrable> { soutenance, produit, rapport, codeSource }, new List <string> { "site web", "programmation", "motus", "intelligence artificielle", "cerveau", "cognitif", "programmation web", "harry potter", "motus", "jeu", "UX design", "serious game", "IA", "individuel" }, new List <int> { 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022 }, new List <int> { 1, 2, 3 }, new List <string> { "libre", "liste", "impose" }); Sauvegarde sauvegarde = new Sauvegarde(repertoire, program); ModificationUtilisateur modificationUtilisateur = new ModificationUtilisateur(repertoire, program, sauvegarde); RechercheUtilisateur rechercheUtilisateur = new RechercheUtilisateur(repertoire); /* sauvegarde.RecupFichierTxtAnneesScolaires(); * sauvegarde.RecupFichierTxtLivrables(); * sauvegarde.RecupFichierTxtMatieres(); * sauvegarde.RecupFichierTxtAutresIntervenants(); * sauvegarde.RecupFichierTxtEleves(); * sauvegarde.RecupFichierTxtTypesProjets(); * sauvegarde.RecupFichierTxtProjets(); * * * * foreach (Projet m in repertoire.RepertoireProjets) * { * Console.WriteLine("yo" + m); * } * * Console.ReadLine();*/ string fonctionnaliteVoulue = null; while (fonctionnaliteVoulue != "") { Console.Clear(); Console.WriteLine("Voulez-vous consulter le catalogue des projets de l'ENSC (écrivez 1), ajouter un élément au catalogue (écrivez 2) ?, \n " + "modifier un élément du catalogue (écrivez 3) ? Supprimer un élément du catalogue (écrivez 4) ? Ou quitter \n l'application ? (tapez juste entrée)"); fonctionnaliteVoulue = Console.ReadLine(); Console.Clear(); if (fonctionnaliteVoulue == "1") { rechercheUtilisateur.InitialiserConsultation(); } if (fonctionnaliteVoulue == "2") { modificationUtilisateur.InitialiserCreation(); Console.ReadKey(); } if (fonctionnaliteVoulue == "3") { Console.WriteLine("Quel est le type de l'élément que vous voulez modifier ? Ecrivez projet, type de projet, élève, professeur, externe, \n année scolaire, matière, ou livrable"); string typeElementAModifier = Console.ReadLine(); Console.Clear(); if (typeElementAModifier == "élève") { Console.WriteLine("Les données de quel élève voulez-vous modifier ?"); string stringEleve = program.EnleverLesEspaces(Console.ReadLine()); Console.Clear(); Eleve eleve = (Eleve)Convert.ChangeType(repertoire["eleve", stringEleve], typeof(Eleve)); Console.WriteLine("Quelle donnée voulez-vous modifier ? Ecrivez nom, prénom, promo, redoublement, pronom"); string attribut = program.EnleverLesEspaces(Console.ReadLine()); Console.Clear(); Console.WriteLine("Et quelle nouvelle valeur voulez-vous rentrer ?"); string valeur = program.EnleverLesEspaces(Console.ReadLine()); Console.Clear(); eleve.ModifierAttribut(attribut, valeur); } Console.ReadKey(); } if (fonctionnaliteVoulue == "4") { Console.WriteLine("Quel est le type de l'élément que vous voulez supprimer ? Ecrivez projet, type de projet, élève, professeur, externe, \n année d'étude, matière, ou livrable"); string typeElementASupprimer = Console.ReadLine(); Console.Clear(); Console.WriteLine("Quel est le nom de l'élément que vous voulez supprimer ?"); string nomElementASupprimer = Console.ReadLine(); if (typeElementASupprimer == "projet") { Projet projetTest = (Projet)Convert.ChangeType(repertoire["projet", nomElementASupprimer], typeof(Projet)); projetTest.Supprimer(); } if (typeElementASupprimer == "projet") { Projet projetTest = (Projet)Convert.ChangeType(repertoire["projet", nomElementASupprimer], typeof(Projet)); projetTest.Supprimer(); } if (typeElementASupprimer == "élève") { Eleve eleveTest = (Eleve)Convert.ChangeType(repertoire["eleve", nomElementASupprimer], typeof(Eleve)); eleveTest.Supprimer(); } if (typeElementASupprimer == "professeur" || typeElementASupprimer == "intervenant externe") { AutreIntervenant autreIntervenantTest = (AutreIntervenant)Convert.ChangeType(repertoire["autreIntervenant", nomElementASupprimer], typeof(AutreIntervenant)); autreIntervenantTest.Supprimer(); } if (typeElementASupprimer == "année scolaire") { AnneeScolaire anneeScolaireTest = (AnneeScolaire)Convert.ChangeType(repertoire["anneeScolaire", nomElementASupprimer], typeof(AnneeScolaire)); anneeScolaireTest.Supprimer(); } if (typeElementASupprimer == "livrable") { Livrable livrableTest = (Livrable)Convert.ChangeType(repertoire["livrable", nomElementASupprimer], typeof(Livrable)); livrableTest.Supprimer(); } if (typeElementASupprimer == "matiere") { Matiere matiereTest = (Matiere)Convert.ChangeType(repertoire["matiere", nomElementASupprimer], typeof(Matiere)); matiereTest.Supprimer(); } Console.Clear(); Console.WriteLine("La suppression a été réalisée avec succès !"); Console.ReadLine(); } } }
public void RecupFichierTxtProjets() { // Création d'une instance de StreamReader pour permettre la lecture de notre fichier source System.Text.Encoding encoding = System.Text.Encoding.GetEncoding("iso-8859-1"); StreamReader monStreamReader = new StreamReader("Projets.txt", encoding); int nbMots = 0; string mot = ""; int ratio = 18; string nom = ""; string sujet = ""; string sujetLibre = ""; string stringTypeProjet = ""; TypeProjet typeProjet = new TypeProjet(); string stringAnneesEtudes = ""; List <string> listStringAnneesEtudes; List <int> anneesEtudes = new List <int> { }; string stringMatieres = ""; List <string> listStringMatieres; List <Matiere> matieres = new List <Matiere> { }; string stringAnneeScolaire = ""; AnneeScolaire anneeScolaire = new AnneeScolaire(); string stringEtudiants = ""; List <string> listStringEtudiants; List <Eleve> etudiants = new List <Eleve> { }; string stringChefDeProjet = ""; bool stringChefDeProjetRempli; Eleve chefDeProjet = new Eleve(); string stringDeveloppeurs = ""; bool stringDeveloppeursRempli; List <string> listStringDeveloppeurs; List <Eleve> developpeurs = new List <Eleve> { }; string stringMaquetteurs = ""; bool stringMaquetteursRempli; List <string> listStringMaquetteurs; List <Eleve> maquetteurs = new List <Eleve> { }; string stringPoleFacteurHumain = ""; bool stringPoleFacteurHumainRempli; List <string> listStringPoleFacteurHumain; List <Eleve> poleFacteurHumain = new List <Eleve> { }; string stringClient = ""; bool stringClientRempli; Personne client = new Personne(); string stringTuteurs = ""; bool stringTuteursRempli; List <string> listStringTuteurs; List <AutreIntervenant> tuteurs = new List <AutreIntervenant> { }; string stringLivrables = ""; List <string> listStringLivrables; List <Livrable> livrables = new List <Livrable> { }; string stringDateDebut = ""; List <string> listStringDateDebut; DateTime dateDebut = new DateTime(); string stringDateFin = ""; List <string> listStringDateFin; DateTime dateFin = new DateTime(); string stringMotsClefs = ""; List <string> motsClefs; // Lecture de tous les mots du fichier (un par lignes) while (mot != null) { nbMots++; mot = monStreamReader.ReadLine(); if (nbMots % ratio == 1) // Récupération du nom { nom = mot; } if (nbMots % ratio == 2) // Récupération du sujet { sujet = mot; } if (nbMots % ratio == 3) // Récupération de la liberté du sujet { sujetLibre = mot; } if (nbMots % ratio == 4) // Récupération du type de projet { stringTypeProjet = mot; typeProjet = (TypeProjet)Convert.ChangeType(Repertoire["typeProjet", stringTypeProjet], typeof(TypeProjet)); } if (nbMots % ratio == 5) // Récupération des années d'étude { stringAnneesEtudes = mot; listStringAnneesEtudes = Program.SeparerChaineDeCaracteres(stringAnneesEtudes); anneesEtudes = new List <int> { }; foreach (string stringAnneeEtude in listStringAnneesEtudes) { anneesEtudes.Add(int.Parse(stringAnneeEtude)); } } if (nbMots % ratio == 6) // Récupération des matières { stringMatieres = mot; matieres = new List <Matiere> { }; listStringMatieres = Program.SeparerChaineDeCaracteres(stringMatieres); foreach (string stringMatiere in listStringMatieres) { matieres.Add((Matiere)Convert.ChangeType(Repertoire["matiere", stringMatiere], typeof(Matiere))); } } if (nbMots % ratio == 7) // Récupération de l'année scolaire { stringAnneeScolaire = mot; anneeScolaire = (AnneeScolaire)Convert.ChangeType(Repertoire["anneeScolaire", stringAnneeScolaire], typeof(AnneeScolaire)); } if (nbMots % ratio == 8) // Récupération des étudiants { stringEtudiants = mot; etudiants = new List <Eleve>(); listStringEtudiants = Program.SeparerChaineDeCaracteres(stringEtudiants); foreach (string etudiant in listStringEtudiants) { etudiants.Add((Eleve)Convert.ChangeType(Repertoire["eleve", etudiant], typeof(Eleve))); } } if (nbMots % ratio == 9) // Récupération du chef de projet { stringChefDeProjet = mot; stringChefDeProjetRempli = Program.VerifierChampRempli(stringChefDeProjet); if (stringChefDeProjetRempli) { chefDeProjet = (Eleve)Convert.ChangeType(Repertoire["eleve", stringChefDeProjet], typeof(Eleve)); } } if (nbMots % ratio == 10) // Récupération des développeurs { stringDeveloppeurs = mot; developpeurs = new List <Eleve>(); stringDeveloppeursRempli = Program.VerifierChampRempli(stringDeveloppeurs); if (stringDeveloppeursRempli) { listStringDeveloppeurs = Program.SeparerChaineDeCaracteres(stringDeveloppeurs); foreach (string stringDeveloppeur in listStringDeveloppeurs) { developpeurs.Add((Eleve)Convert.ChangeType(Repertoire["eleve", stringDeveloppeur], typeof(Eleve))); } } } if (nbMots % ratio == 11) // Récupération des maquetteurs { stringMaquetteurs = mot; maquetteurs = new List <Eleve>(); stringMaquetteursRempli = Program.VerifierChampRempli(stringMaquetteurs); if (stringMaquetteursRempli) { listStringMaquetteurs = Program.SeparerChaineDeCaracteres(stringMaquetteurs); foreach (string stringMaquetteur in listStringMaquetteurs) { maquetteurs.Add((Eleve)Convert.ChangeType(Repertoire["eleve", stringMaquetteur], typeof(Eleve))); } } } if (nbMots % ratio == 12) // Récupération du pôle facteur humain { stringPoleFacteurHumain = mot; poleFacteurHumain = new List <Eleve>(); stringPoleFacteurHumainRempli = Program.VerifierChampRempli(stringPoleFacteurHumain); if (stringPoleFacteurHumainRempli) { listStringPoleFacteurHumain = Program.SeparerChaineDeCaracteres(stringPoleFacteurHumain); foreach (string etudiantPoleFacteurHumain in listStringPoleFacteurHumain) { poleFacteurHumain.Add((Eleve)Convert.ChangeType(Repertoire["eleve", etudiantPoleFacteurHumain], typeof(Eleve))); } } } if (nbMots % ratio == 13) // Récupération du client { stringClient = mot; stringClientRempli = Program.VerifierChampRempli(stringClient); if (stringClientRempli) { client = (AutreIntervenant)Convert.ChangeType(Repertoire["autreIntervenant", stringClient], typeof(AutreIntervenant)); if (client == null) { client = (Eleve)Convert.ChangeType(Repertoire["eleve", stringClient], typeof(Eleve)); } } } if (nbMots % ratio == 14) // Récupération des tuteurs { stringTuteurs = mot; tuteurs = new List <AutreIntervenant>(); stringTuteursRempli = Program.VerifierChampRempli(stringTuteurs); if (stringTuteursRempli) { listStringTuteurs = Program.SeparerChaineDeCaracteres(stringTuteurs); foreach (string tuteur in listStringTuteurs) { tuteurs.Add((AutreIntervenant)Convert.ChangeType(Repertoire["autreIntervenant", tuteur], typeof(AutreIntervenant))); } } } if (nbMots % ratio == 15) // Récupération des livrables { stringLivrables = mot; livrables = new List <Livrable>(); listStringLivrables = Program.SeparerChaineDeCaracteres(stringLivrables); foreach (string livrable in listStringLivrables) { livrables.Add((Livrable)Convert.ChangeType(Repertoire["livrable", livrable], typeof(Livrable))); } } if (nbMots % ratio == 16) // Récupération de la date de début { stringDateDebut = mot; listStringDateDebut = Program.SeparerChaineDeCaracteres(stringDateDebut); int moisDebut = int.Parse(listStringDateDebut[1]); int jourDebut = int.Parse(listStringDateDebut[2]); int anneeDebut = int.Parse(listStringDateDebut[0]); dateDebut = new DateTime(moisDebut, jourDebut, anneeDebut); } if (nbMots % ratio == 17) // Récupération de la date de fin { stringDateFin = mot; listStringDateFin = Program.SeparerChaineDeCaracteres(stringDateFin); int moisFin = int.Parse(listStringDateFin[1]); int jourFin = int.Parse(listStringDateFin[2]); int anneeFin = int.Parse(listStringDateFin[0]); dateFin = new DateTime(moisFin, jourFin, anneeFin); } if (nbMots % ratio == 0) // Récupération des mots-clefs { stringMotsClefs = mot; motsClefs = Program.SeparerChaineDeCaracteres(stringMotsClefs); Repertoire.RepertoireProjets.Add(new Projet(nom, sujet, sujetLibre, typeProjet, anneesEtudes, matieres, anneeScolaire, etudiants, chefDeProjet, developpeurs, maquetteurs, poleFacteurHumain, client, tuteurs, livrables, dateDebut, dateFin, motsClefs)); } } // Fermeture du StreamReader (attention très important) monStreamReader.Close(); }
public void CreerProjet() { //initialisation du booleen qui vérifie que ce que rentre l'utilisateur convient bool erreurSurvenue = false; //On récupère le type du projet Console.WriteLine("Quel est le type du projet ?"); string stringTypeProjet = Program.EnleverLesEspaces(Console.ReadLine()); TypeProjet typeProjet = (TypeProjet)Convert.ChangeType(Repertoire["typeProjet", stringTypeProjet], typeof(TypeProjet)); //On récupère le nom du projet Console.WriteLine("Quel est le nom du projet ?"); string nom = Program.EnleverLesEspaces(Console.ReadLine()); //On récupère le sujet du projet string sujet = ""; if (typeProjet.Sujet == null) { Console.WriteLine("Quel est le sujet du projet ?"); sujet = Program.EnleverLesEspaces(Console.ReadLine()); } else { sujet = typeProjet.Sujet; } //On récupère l'information de à quel point le sujet est imposé string sujetLibre = null; if (typeProjet.SujetLibre == null) { Console.WriteLine("Le sujet du projet est-il imposé (écrivez \"impose\") ? libre parmi une liste de sujets imposée (écrivez \"liste\") ? ou libre (écrivez \"libre\") ?"); sujetLibre = Program.EnleverLesEspaces(Console.ReadLine()); } else { sujetLibre = typeProjet.SujetLibre; } erreurSurvenue = false; List <int> anneesEtudes = new List <int> { }; string stringAnneesEtudes = ""; //On récupère les annees d'etude du projet if (typeProjet.AnneesEtudes == null) { while (erreurSurvenue == true) { Console.WriteLine("Le projet a-t-il été réalisé par des étudiants en première année (écrivez \"1\"), 2ème année (écrivez \"2\"), ou 3ème année (écrivez \"3\") ? " + "Séparez par une virgule (ajout d'un espace optionnel) les nombres si des étudiants d'années différentes sont concernés)"); stringAnneesEtudes = Program.EnleverLesEspaces(Console.ReadLine()); List <string> listStringAnneesEtudes = Program.SeparerChaineDeCaracteres(stringAnneesEtudes); foreach (string stringAnneeEtude in listStringAnneesEtudes) { if (stringAnneeEtude == "1" || stringAnneeEtude == "2" || stringAnneeEtude == "3") { anneesEtudes.Add(int.Parse(stringAnneeEtude)); } else { erreurSurvenue = true; Console.WriteLine("Vous avez mal rentré une ou plusieurs des années d'étude"); } } } } else { anneesEtudes = typeProjet.AnneesEtudes; bool premierMotPasse = false; foreach (int anneeEtude in anneesEtudes) { if (premierMotPasse) { stringAnneesEtudes += ", " + anneeEtude.ToString(); } else { stringAnneesEtudes += anneeEtude.ToString(); premierMotPasse = true; } } } erreurSurvenue = false; //On récupère les matieres du projet List <Matiere> matieres = new List <Matiere> { }; string stringMatieres = ""; if (typeProjet.Matieres == null) { Console.WriteLine("Quelles sont la/les matière(s) du projet ? (Rentrez soit le nom de la matière comme orthographiée sur moodle, soit son code)"); stringMatieres = Program.EnleverLesEspaces(Console.ReadLine()); List <string> listStringMatieres = Program.SeparerChaineDeCaracteres(stringMatieres); foreach (string stringMatiere in listStringMatieres) { matieres.Add((Matiere)Convert.ChangeType(Repertoire["matiere", stringMatiere], typeof(Matiere))); } } else { matieres = typeProjet.Matieres; bool premierMotPasse = false; foreach (Matiere matiere in matieres) { string stringMatiere = matiere.Code; if (premierMotPasse) { stringMatieres += ", " + stringMatiere; } else { stringMatieres += stringMatiere; premierMotPasse = true; } } } //On récupère les promos du projet /*List<int> promos = new List<int> { }; * Console.WriteLine("Quelles sont la/les promo(s) des étudiants qui ont réalisé ce projet ? (Ex : 2020, 2021))"); * List<string> stringPromos = Program.SeparerChaineDeCaracteres(Console.ReadLine()); * foreach (string stringPromo in stringPromos) * { * promos.Add(int.Parse(stringPromo)); * }*/ //On récupère l'année de scolarité du projet Console.WriteLine("Pendant quelle année scolaire a été réalisé ce projet ? (Ecrivez par exemple : 2019-2020)"); string stringAnneeScolaire = Console.ReadLine(); AnneeScolaire anneeScolaire = (AnneeScolaire)Convert.ChangeType(Repertoire["anneeScolaire", stringAnneeScolaire], typeof(AnneeScolaire)); //On récupère le nombre d'étudiants qui ont travaillé sur ce projet /* int nbPersonnesImpliquees = 0; * if (typeProjet.NbPersonnesImpliquees == 0) * { * Console.WriteLine("Combien d'étudiants ont travaillé sur ce projet ?"); * nbPersonnesImpliquees = int.Parse(Console.ReadLine()); * } * else * { * nbPersonnesImpliquees = typeProjet.NbPersonnesImpliquees; * }*/ //On récupère le nom des étudiants qui ont travaillé sur ce projet List <Eleve> etudiants = new List <Eleve> { }; Console.WriteLine("Quels sont les noms des étudiants qui ont travaillé sur ce projet ? (écrivez le prénom puis le nom ou le code formé" + "de la première lettre du prénom et du nom de famille"); string stringEtudiants = Program.EnleverLesEspaces(Console.ReadLine()); List <string> listStringEtudiants = Program.SeparerChaineDeCaracteres(stringEtudiants); foreach (string etudiant in listStringEtudiants) { etudiants.Add((Eleve)Convert.ChangeType(Repertoire["eleve", etudiant], typeof(Eleve))); } //On récupère le nom du chef de projet s'il y en a un Eleve chefDeProjet = null; Console.WriteLine("Quel est le nom du chef de projet ? (s'il y en a un)"); string stringChefDeProjet = Program.EnleverLesEspaces(Console.ReadLine()); bool stringChefDeProjetRempli = Program.VerifierChampRempli(stringChefDeProjet); if (stringChefDeProjetRempli) { chefDeProjet = (Eleve)Convert.ChangeType(Repertoire["eleve", stringChefDeProjet], typeof(Eleve)); } //On récupère les développeurs du projet s'il y en a List <Eleve> developpeurs = new List <Eleve> { }; Console.WriteLine("Quels sont les noms des développeurs du projet ? (s'il y en a)"); string stringDeveloppeurs = Program.EnleverLesEspaces(Console.ReadLine()); bool stringDeveloppeursRempli = Program.VerifierChampRempli(stringDeveloppeurs); if (stringDeveloppeursRempli) { List <string> listStringDeveloppeurs = Program.SeparerChaineDeCaracteres(stringDeveloppeurs); foreach (string stringDeveloppeur in listStringDeveloppeurs) { developpeurs.Add((Eleve)Convert.ChangeType(Repertoire["eleve", stringDeveloppeur], typeof(Eleve))); } } //On récupère les maquetteurs du projet s'il y en a List <Eleve> maquetteurs = new List <Eleve> { }; Console.WriteLine("Qui sont les noms des maquetteurs du projet ? (s'il y en a)"); string stringMaquetteurs = Program.EnleverLesEspaces(Console.ReadLine()); bool stringMaquetteursRempli = Program.VerifierChampRempli(stringMaquetteurs); if (stringMaquetteursRempli) { List <string> listStringMaquetteurs = Program.SeparerChaineDeCaracteres(stringMaquetteurs); foreach (string stringMaquetteur in listStringMaquetteurs) { maquetteurs.Add((Eleve)Convert.ChangeType(Repertoire["eleve", stringMaquetteur], typeof(Eleve))); } } //On récupère le pole facteur humain du projet s'il y en a List <Eleve> poleFacteurHumain = new List <Eleve> { }; Console.WriteLine("Quels sont les noms des étudiants qui ont travaillé dans le pôle Facteur Humain du projet ? (s'il y en a)"); string stringPoleFacteurHumain = Program.EnleverLesEspaces(Console.ReadLine()); bool stringPoleFacteurHumainRempli = Program.VerifierChampRempli(stringPoleFacteurHumain); if (stringPoleFacteurHumainRempli) { List <string> listStringPoleFacteurHumain = Program.SeparerChaineDeCaracteres(stringPoleFacteurHumain); foreach (string etudiantPoleFacteurHumain in listStringPoleFacteurHumain) { poleFacteurHumain.Add((Eleve)Convert.ChangeType(Repertoire["eleve", etudiantPoleFacteurHumain], typeof(Eleve))); } } //On récupère le nom du client Personne client = null; Console.WriteLine("Quel est le nom du client du projet ? (s'il y en a un)"); string stringClient = Program.EnleverLesEspaces(Console.ReadLine()); bool stringClientRempli = Program.VerifierChampRempli(stringClient); if (stringClientRempli) { client = (AutreIntervenant)Convert.ChangeType(Repertoire["autreIntervenant", stringClient], typeof(AutreIntervenant)); if (client == null) { client = (Eleve)Convert.ChangeType(Repertoire["eleve", stringClient], typeof(Eleve)); } } //On récupère le nom des tuteurs List <AutreIntervenant> tuteurs = new List <AutreIntervenant> { }; string stringTuteurs = ""; if (typeProjet.Tuteurs == null) { Console.WriteLine("Quels sont les noms des tuteurs ? (dans le cas d'un projet intramatière, les tuteurs pourront être les professeurs encadrant le projet)"); stringTuteurs = Program.EnleverLesEspaces(Console.ReadLine()); bool stringTuteursRempli = Program.VerifierChampRempli(stringTuteurs); if (stringTuteursRempli) { List <string> listStringTuteurs = Program.SeparerChaineDeCaracteres(stringTuteurs); foreach (string tuteur in listStringTuteurs) { tuteurs.Add((AutreIntervenant)Convert.ChangeType(Repertoire["autreIntervenant", tuteur], typeof(AutreIntervenant))); } } } else { tuteurs = typeProjet.Tuteurs; bool premierMotPasse = false; foreach (AutreIntervenant tuteur in tuteurs) { string stringTuteur = tuteur.Identifiant; if (premierMotPasse) { stringTuteurs += ", " + stringTuteur; } else { stringTuteurs += stringTuteur; premierMotPasse = true; } } } //On récupère les livrables List <Livrable> livrables = new List <Livrable> { }; string stringLivrables = ""; if (typeProjet.Livrables == null) { Console.WriteLine("Quels sont les livrables attendus pour le projet ?"); stringLivrables = Program.EnleverLesEspaces(Console.ReadLine()); List <string> listStringLivrables = Program.SeparerChaineDeCaracteres(stringLivrables); foreach (string livrable in listStringLivrables) { livrables.Add((Livrable)Convert.ChangeType(Repertoire["livrable", livrable], typeof(Livrable))); } } else { livrables = typeProjet.Livrables; bool premierMotPasse = false; foreach (Livrable livrable in livrables) { string stringLivrable = livrable.Nom; if (premierMotPasse) { stringLivrables += ", " + stringLivrable; } else { stringLivrables += stringLivrable; premierMotPasse = true; } } } //On récupère la date de début du projet DateTime dateDebut = new DateTime(2000, 1, 1); string stringDateDebut = ""; if (typeProjet.DateDebut.Year < 2001) { Console.WriteLine("Quelle est la date de début du projet ? (écrivez sous la forme \"jour,mois,année\" en chiffres (4 chiffres pour l'année). Exemple pour le 3 février 2019 : \"3,2,2019\""); stringDateDebut = Program.EnleverLesEspaces(Console.ReadLine()); List <string> listStringDateDebut = Program.SeparerChaineDeCaracteres(stringDateDebut); int moisDebut = int.Parse(listStringDateDebut[1]); int jourDebut = int.Parse(listStringDateDebut[0]); int anneeDebut = int.Parse(listStringDateDebut[2]); dateDebut = new DateTime(anneeDebut, moisDebut, jourDebut); } else { dateDebut = typeProjet.DateDebut; string jourDebut = dateDebut.Day.ToString(); string moisDebut = dateDebut.Month.ToString(); string anneeDebut = dateDebut.Year.ToString(); stringDateDebut = jourDebut + ", " + moisDebut + ", " + anneeDebut; } //On récupère la date de fin du projet DateTime dateFin = new DateTime(2000, 1, 1); string stringDateFin = ""; if (typeProjet.DateFin.Year < 2001) { Console.WriteLine("Quelle est la date de fin du projet ? (écrivez sous la forme \"jour,mois,année\" en chiffres (4 chiffres pour l'année). Exemple pour le 3 février 2019 : \"3,2,2019\""); stringDateFin = Program.EnleverLesEspaces(Console.ReadLine()); List <string> listStringDateFin = Program.SeparerChaineDeCaracteres(stringDateFin); int moisFin = int.Parse(listStringDateFin[1]); int jourFin = int.Parse(listStringDateFin[0]); int anneeFin = int.Parse(listStringDateFin[2]); dateFin = new DateTime(anneeFin, moisFin, jourFin); } else { dateFin = typeProjet.DateFin; string jourFin = dateFin.Day.ToString(); string moisFin = dateFin.Month.ToString(); string anneeFin = dateFin.Year.ToString(); stringDateFin = jourFin + ", " + moisFin + ", " + anneeFin; } //On récupère les mots-clefs List <string> motsClefs = null; string stringMotsClefs = ""; if (typeProjet.MotsClefs == null) { Console.WriteLine("Quels sont les mots-clefs liés au projet ?"); stringMotsClefs = Program.EnleverLesEspaces(Console.ReadLine()); motsClefs = Program.SeparerChaineDeCaracteres(stringMotsClefs); } else { //On récupère dans un string tous les mots-clefs déjà présents pour les présenter à l'utilisateur string motsClefsDejaExistants = ""; bool premierMotClefPasse = false; foreach (string motClef in typeProjet.MotsClefs) { if (premierMotClefPasse) { motsClefsDejaExistants += ", " + motClef; } else { motsClefsDejaExistants += motClef; premierMotClefPasse = true; } } Console.WriteLine("Voici les mots-clefs associés au type de projet \"" + typeProjet.Nom + "\" : " + motsClefsDejaExistants + ". Quels sont les mots-clefs que vous voulez rajouter ?"); stringMotsClefs = Program.EnleverLesEspaces(Console.ReadLine()); bool stringMotsClefsRempli = Program.VerifierChampRempli(stringMotsClefs); if (stringMotsClefsRempli) { motsClefs = Program.SeparerChaineDeCaracteres(stringMotsClefs); foreach (string motClef in typeProjet.MotsClefs) { motsClefs.Add(motClef); } } else { motsClefs = typeProjet.MotsClefs; bool premierMotPasse = false; foreach (string motClef in motsClefs) { if (premierMotPasse) { stringMotsClefs += ", " + motClef; } else { stringMotsClefs += motClef; premierMotPasse = true; } } } } int NbProjetsAvant = Repertoire.RepertoireProjets.Count(); Repertoire.RepertoireProjets.Add(new Projet(nom, sujet, sujetLibre, typeProjet, anneesEtudes, matieres, anneeScolaire, etudiants, chefDeProjet, developpeurs, maquetteurs, poleFacteurHumain, client, tuteurs, livrables, dateDebut, dateFin, motsClefs)); int NbProjetsAprès = Repertoire.RepertoireProjets.Count(); if (NbProjetsAprès == NbProjetsAvant + 1) { Console.Clear(); Console.WriteLine("Le projet a été ajouté avec succès !"); Sauvegarde.SauvegarderFichierTxtProjet(nom, sujet, sujetLibre, stringTypeProjet, stringAnneesEtudes, stringMatieres, stringAnneeScolaire, stringEtudiants, stringChefDeProjet, stringDeveloppeurs, stringMaquetteurs, stringPoleFacteurHumain, stringClient, stringTuteurs, stringLivrables, stringDateDebut, stringDateFin, stringMotsClefs); } }
public void ConsulterAnneeScolaire(string instanceDeRecherche) // année d'étude { Console.WriteLine("Comment voulez-classer à l'affichage les projets qui correspondent à la recherche ? Ecrivez liberté de sujet, matière et année d'étude"); string classement = Console.ReadLine(); //Console.Clear(); List <Projet> projetsAAfficher = new List <Projet> { }; AnneeScolaire AnneeScolaireRecherche = (AnneeScolaire)Convert.ChangeType(Repertoire["anneeScolaire", instanceDeRecherche], typeof(AnneeScolaire)); foreach (Projet projet in Repertoire.RepertoireProjets) // On parcourt tous les projets de l'application, on ajoute les projets comprenant l'élève à la liste { if (projet.AnneeScolaire == AnneeScolaireRecherche) { projetsAAfficher.Add(projet); } } if (classement == "année d'étude") { foreach (int anneeEtude in Repertoire.RepertoireAnneesEtudes) // Pour chaque année d'étude, on affiche les projets { if (anneeEtude == 3) { Console.WriteLine("\n \n Troisième année d'étude : \n"); } if (anneeEtude == 2) { Console.WriteLine("\n \n Deuxième année d'étude : \n"); } if (anneeEtude == 1) { Console.WriteLine("\n \n Première année d'étude : \n"); } foreach (Projet projet in projetsAAfficher) { foreach (int anneeEtudeProjet in projet.AnneesEtudes) { if (anneeEtudeProjet == anneeEtude) { Console.WriteLine(projet); } } } } Console.ReadLine(); } if (classement == "matière") { foreach (Matiere matiere in Repertoire.RepertoireMatieres) // Pour chaque année d'étude, on affiche les projets { Console.WriteLine(matiere + ":"); foreach (Projet projet in projetsAAfficher) { foreach (Matiere matiereProjet in projet.Matieres) { if (matiereProjet == matiere) { Console.WriteLine(projet); } } } } Console.ReadLine(); } if (classement == "liberté de sujet") { foreach (string liberteDeSujet in Repertoire.RepertoireLibertesDeSujet) // Pour chaque année d'étude, on affiche les projets { if (liberteDeSujet == "liste") { Console.WriteLine("\n \n Choix libre parmi une liste imposée de sujets : \n"); } if (liberteDeSujet == "impose") { Console.WriteLine("\n \n Sujet imposé : \n"); } if (liberteDeSujet == "libre") { Console.WriteLine("\n \n Sujet libre : \n"); } foreach (Projet projet in projetsAAfficher) { if (projet.SujetLibre == liberteDeSujet) { Console.WriteLine(projet); } } } Console.ReadLine(); } }