Пример #1
0
        static void Main(string[] args)
        {
            Véhicules[] Tab = new Véhicules[4];
            Tab[0] = new Voiture("Mégane", 19000);
            Tab[1] = new Moto("Intruder", 13000);
            Tab[2] = new Voiture("Enzo", 380000);
            Tab[3] = new Moto("Yamaha", 11000);

            Dictionary <string, Véhicules> dico = new Dictionary <string, Véhicules>();

            foreach (Véhicules a in Tab)
            {
                dico.Add(a.Nom, a);
            }

            foreach (Véhicules a in dico.Values)
            {
                Console.WriteLine("{0} : {1}", a.Nom, a.Prix);
            }
            SortedList <string, Véhicules> dico2 = new SortedList <string, Véhicules>();

            foreach (var a in dico)
            {
                dico2.Add(a.Key, a.Value);
            }

            dico.Clear();
            foreach (Véhicules a in dico2.Values)
            {
                Console.WriteLine("{0} : {1}", a.Nom, a.Prix);
            }

            string[] ta = new string[5];
            ta[0] = "Clio";
            ta[1] = "Mégane";
            ta[2] = "Golf";
            ta[3] = "Enzo";
            ta[4] = "Polo";

            foreach (var a in ta)
            {
                if (dico2.TryGetValue(a, out Tab[0]))
                {
                    Console.WriteLine("{0} : {1}", Tab[0].Nom, Tab[0].Prix);
                }
            }

            DelegueEntretien entretien = null;

            entretien += ChangerPneus;
            entretien += RetoucherPeinture;
            Tab[1].Entretenir(DateTime.Today, entretien);

            entretien += Vidanger;
            Tab[1].Entretenir(DateTime.Today, entretien);

            Console.WriteLine(Tab[1].CarnetEntretien[DateTime.Today]);

            Console.ReadKey();
        }
Пример #2
0
 public void Entretenir(DateTime date, DelegueEntretien entretien)
 {
     if (!CarnetEntretien.ContainsKey(date))
     {
         CarnetEntretien.Add(date, string.Empty);
     }
     CarnetEntretien[date] += entretien(this);
 }
Пример #3
0
 public void Entretenir(DateTime date, DelegueEntretien entretien)
 {
     if (!CarnetEntretien.ContainsKey(date))
     {
         CarnetEntretien.Add(date, string.Format("Entretien du véhicule {0} du {1}", this.Nom, date));
     }
     CarnetEntretien[date] += "\n" + entretien();
 }
Пример #4
0
        public void Entretenir(DateTime d, DelegueEntretien entretien)
        {
            if (!CarnetEntretien.ContainsKey(d))
            {
                CarnetEntretien.Add(d, string.Empty);
            }

            entretien(this);
        }
Пример #5
0
        static void Main(string[] args)
        {
            DelegueEntretien delegue = null;

            delegue += ChangerPneus;
            delegue += Vidanger;
            delegue += RetoucherPeinture;

            var vMégane = new Voiture("Mégane", 19000);

            vMégane.Entretenir(DateTime.Today, delegue);
            Console.WriteLine(vMégane);


            //var vMégane = new Voiture("Mégane", 19000);
            //var mIntru = new Moto("Intrudeur", 13000);
            //var vEnzo = new Voiture("Enzo", 380000);
            //var mYama = new Moto("Yamaha XJR1300", 11000);

            ////Avec Dictionary
            //Dictionary<string, Véhicule> dico = new Dictionary<string, Véhicule>();
            //dico.Add(vMégane.Nom, vMégane);
            //dico.Add(mIntru.Nom, mIntru);
            //dico.Add(vEnzo.Nom, vEnzo);
            //dico.Add(mYama.Nom, mYama);

            //Console.WriteLine("Affichage avec Dictionary :");
            //foreach (var a in dico)
            //    Console.WriteLine("{0} : {1}", a.Value.Nom, a.Value.Prix);

            //SortedList<string, Véhicule> sList = new SortedList<string, Véhicule>(dico);

            //Console.WriteLine();
            //Console.WriteLine("Affichage avec SortedList :");
            //foreach (var a in sList)
            //    Console.WriteLine("{0} : {1}", a.Value.Nom, a.Value.Prix);

            //string[] marque = { "Clio", "Mégane", "Golf", "Enzo", "Polo" };

            //Console.WriteLine();
            //{
            //    Véhicule v;
            //    foreach (var m in marque)
            //        if (sList.TryGetValue(m, out v))
            //            Console.WriteLine("{0} : {1}", v.Nom, v.Prix);
            //}

            Console.ReadKey();
        }
Пример #6
0
 public void Entretenir(DateTime date, DelegueEntretien entretien)
 {
     CarnetEntretien.Add(date, string.Empty);
     entretien(this);
 }
Пример #7
0
        static void Main(string[] args)
        {
            /// Introduction au collection génériques
            Vehicule[] tableauVehicules =
            {
                new Voiture("Mégane",       19000),
                new Moto("Intruder",        13000),
                new Voiture("Enzo",        380000),
                new Moto("Yamaha XJR1300", 11000)
            };
            // pas la bonne méthode pour utiliser les délégués
            DelegueEntretien entretien = null;

            entretien += RetoucherPeinture;
            tableauVehicules[0].Entretenir(DateTime.Today, entretien);
            entretien += Vidanger;
            tableauVehicules[0].Entretenir(DateTime.Today, entretien);
            entretien += ChangerPneus;
            tableauVehicules[0].Entretenir(DateTime.Today, entretien);
            Console.WriteLine(tableauVehicules[0].CarnetEntretien[DateTime.Today]);

            /*
             * Dictionary<string, Vehicule> dicoTaco = new Dictionary<string, Vehicule>();
             * foreach (Vehicule v in tableauVehicules)
             * {
             *  dicoTaco.Add(v.Nom, v);
             * }
             *
             * foreach (var v in dicoTaco)
             * {
             *  Console.WriteLine(v.Key + " : " + v.Value.Prix);
             * }
             *
             * SortedList<Vehicule, string > dicoTri = new SortedList<Vehicule, string>();
             * foreach (var v in dicoTaco)
             * {
             *  dicoTri.Add(v.Value, v.Key);
             * }
             *
             * Console.WriteLine();
             * foreach (var v in dicoTri)
             * {
             *  Console.WriteLine(v.Key.Prix + " : " + v.Value);
             * }
             *
             * string[] tableauNom = { "Clio", "Mégane", "Golf", "Enzo", "Polo" };
             *
             * Console.WriteLine();
             * Vehicule veh;
             * foreach (string nom in tableauNom)
             * {
             *  if (dicoTaco.ContainsKey(nom))
             *  {
             *      dicoTaco.TryGetValue(nom, out veh);
             *      Console.WriteLine(nom + " : " + veh.Prix);
             *  }
             * }
             */
            /*
             * for (int i = 0; i < tableauVehicules.Length; i++)
             * {
             *  if (tableauVehicules[i] is Voiture)
             *      Console.WriteLine("{0} sur la {1}", ((Voiture)tableauVehicules[i]).RefaireParallélisme(), tableauVehicules[i].Nom);
             * }
             *
             * Vehicule r5 = new Voiture("zef", energies.Essence);
             * Vehicule honda = new Moto("CBF600", energies.Essence);
             */
            /*
             * try
             * {
             *  int comparateur = honda.CompareTo(r5);
             *  if (comparateur < 0)
             *      Console.WriteLine("la {0} est plus economique que la {1}.", r5.Nom, honda.Nom);
             *  else if (comparateur > 0)
             *      Console.WriteLine("la {0} est plus economique que la {1}.", honda.Nom, r5.Nom);
             *  else
             *      Console.WriteLine("Les deux véhicules ont le même PRK.");
             * }
             * catch (ArgumentException e)
             * {
             *  Console.WriteLine(e.Message);
             * }
             */
            /*
             * Console.WriteLine(r5.Description);
             * Console.WriteLine("La {0} coute " + r5.PRK + " euros par kilomètres.", r5.Nom);
             * Console.WriteLine(honda.Description);
             * Console.WriteLine("La {0} coute " + honda.PRK + " euros par kilomètres.", honda.Nom);
             */
            Console.ReadKey();
        }
Пример #8
0
 public void Entretenir(DateTime dateEntretien, DelegueEntretien entretienVéhicule)
 {
     CarnetEntretien.Add(dateEntretien, string.Empty);
     entretienVéhicule(this);
 }
Пример #9
0
        static void Main(string[] args)
        {
            //Voiture v1 = new Voiture("Merco", Energies.Gazole);
            //Console.WriteLine(v1.Description);

            //Véhicule v2 = new Moto("Cross", Energies.Essence);
            //Véhicule v3 = new Voiture("Renault", Energies.Essence);
            //Console.WriteLine(v2.Description);
            //Console.WriteLine(v3.Description);

            //Console.WriteLine(v2.PRK);
            //Console.WriteLine(v3.PRK);

            //Console.WriteLine("Résultat v2 par rapport à v1 = {0}", v2.CompareTo(v1));
            //Console.WriteLine(v2.ComparerVéhicules(v3));

            //Véhicule[] tabVehicule =
            //{new Voiture("Peugeot", Energies.Electrique),
            // new Moto("Honda",Energies.GPL),
            // new Voiture("Audi", Energies.Essence),
            // new Moto("Yamaha",Energies.Aucune)
            //};

            //for(int i=0; i < 4; i++)
            //{
            //    if(tabVehicule[i] is Voiture)
            //    {
            //        Console.WriteLine(((Voiture)tabVehicule[i]).RefaireParallélisme());
            //    }
            //}

            Véhicule v1 = new Voiture("Mégane", 19000);
            Véhicule v2 = new Moto("Intruder", 13000);
            Véhicule v3 = new Voiture("Enzo", 380000);
            Véhicule v4 = new Moto("Yamaha XJR1300", 11000);

            //Gestion délégués

            /* Dictionary<string, Véhicule> Véhicules = new Dictionary<string, Véhicule>();
             * Véhicules.Add(v1.Nom, v1);
             * Véhicules.Add(v2.Nom, v2);
             * Véhicules.Add(v3.Nom, v3);
             * Véhicules.Add(v4.Nom, v4);
             *
             * Console.OutputEncoding = Encoding.Unicode;// pour mettre le symbole €
             * foreach(var a in Véhicules)
             * {
             *   Console.WriteLine("Nom: {0} prix: {1}€", a.Key, a.Value.Prix);
             * }
             *
             * SortedList<string, Véhicule> ListVéhicule = new SortedList<string, Véhicule>();
             * foreach(var a in Véhicules)
             * {
             *   ListVéhicule.Add(a.Key, a.Value);
             * }
             * //Véhicules.Clear();
             * Console.WriteLine("liste");
             * foreach(var a in ListVéhicule)
             * {
             *   Console.WriteLine("Nom: {0} prix: {1}€", a.Key, a.Value.Prix);
             * }
             *
             * SortedList<Véhicule, string> ListVéhicule1 = new SortedList<Véhicule, string>();
             * foreach (var a in Véhicules)
             * {
             *   ListVéhicule1.Add(a.Value, a.Key);
             * }
             * //Véhicules.Clear();
             *
             * Console.WriteLine("liste1");
             * foreach (var a in ListVéhicule1)
             * {
             *   Console.WriteLine("Nom: {0} prix: {1}€", a.Key.Nom, a.Key.Prix);
             * }
             *
             * Console.WriteLine("Résultat recherche");
             * string[] tabChaine = {"Clio","Mégane", "Golf", "Enzo", "Polo" };(1)*/

            /*for(int i=0; i<tabChaine.Length; i++)
             * {
             *  string v = tabChaine[i];
             *  foreach(var a in Véhicules)
             *  {
             *      if (v.CompareTo(a.Key) == 0)
             *          Console.WriteLine("Nom: {0} prix: {1}€", a.Key, a.Value.Prix);
             *  }
             * }*/
            /*foreach(var s in tabChaine)
             * {
             *  Véhicule v;
             *  if(Véhicules.TryGetValue(s,out v))
             *      Console.WriteLine("Nom: {0} Prix: {1}",v.Nom, v.Prix);
             * }(1)*/

            DelegueEntretien entretien = null;

            entretien += ChangerPneus;
            entretien += Vidanger;
            entretien += RetoucherPeinture;

            v1.Entretenir(new DateTime(2008, 10, 05), entretien);
            AfficherCarnetEntretien(v1);

            Console.ReadKey();
        }