예제 #1
0
        /// <summary>
        /// Permet d'insérer un objet dans une queue à l'emplacement voulu.
        /// </summary>
        /// <param name="objet">L'objet que l'on souhaite Ajouter dans la queue</param>
        /// <param name="numero">L'emplacement dans la queue où l'on souhaite Ajouter l'objet</param>
        /// <returns>la queue avec l'objet inséré</returns>
        public void Inserer(Coureur objet, int index)
        {
            Console.WriteLine("\n------ Insertion ------ \n");
            Queue <Coureur> res = new Queue <Coureur>();

            if (index > _queue.Count)
            {
                res = _queue;
                res.Enqueue(objet);
                Console.WriteLine("{0} a été ajouté à la fin de la collection.\n", objet.ToString());
            }
            else
            {
                int i = 1;
                foreach (Coureur entry in _queue)
                {
                    if (i == index)
                    {
                        Console.WriteLine("{0} a été ajouté à l'index {1}.\n", objet.ToString(), i);
                        res.Enqueue(objet);
                        i++;
                    }
                    res.Enqueue(entry);
                    i++;
                }
            }
            _queue = res;
        }
예제 #2
0
        /// <summary>
        /// Permet d'insérer un objet à l'emplacement voulu
        /// </summary>
        /// <param name="objet">L'objet à insérer</param>
        /// <param name="numero">L'emplacementoù on veut insérer l'objet</param>
        public void Inserer(Coureur objet, int index)
        {
            Console.WriteLine("\n------ Insertion ------ \n");
            Stack <Coureur> res = new Stack <Coureur>();

            if (index > _stack.Count)
            {
                res.Push(objet);
                Console.WriteLine("{0} a été ajouté à la fin de la collection.\n", objet.ToString());
                index = -1;
            }
            else
            {
                index--;
            }
            for (int i = _stack.Count - 1; i >= 0; i--)
            {
                res.Push(_stack.ElementAt(i));
                if (i == index)
                {
                    Console.WriteLine("{0} a été ajouté à l'index {1}.\n", objet.ToString(), (index + 1));
                    res.Push(objet);
                }
            }
            _stack = res;
        }
예제 #3
0
 /// <summary>
 /// Permet de RechercherKey un objet en fonction de sa valeur
 /// </summary>
 /// <param name="objet">L'objet que l'on aimerait retrouver</param>
 public void Rechercher(Coureur objet)
 {
     Console.WriteLine("\n------ Recherche ------ \n");
     if (_queue.Contains(objet))
     {
         for (int i = 0; i < _queue.Count; i++)
         {
             if (_queue.ElementAt(i).Equals(objet))
             {
                 Console.WriteLine("n°{0} : {1}\n", i, _queue.ElementAt(i));
             }
         }
     }
     else
     {
         Console.WriteLine("\n {0} n'est pas dans la queue.\n", objet.ToString());
     }
 }
예제 #4
0
 /// <summary>
 /// Permet de Supprimer un des objets en fonction de lui-même (ici son nom)
 /// </summary>
 /// <param name="objet">L'objet que l'on souhaiterait Supprimer</param>
 public void Supprimer(Coureur objet)
 {
     Console.WriteLine("\n------ Suppression ------ \n");
     if (_queue.Contains(objet))
     {
         Queue <Coureur> res = new Queue <Coureur>();
         foreach (Coureur entry in _queue)
         {
             if (!entry.Equals(objet))
             {
                 res.Enqueue(entry);
             }
         }
         _queue = res;
         Console.WriteLine("L'objet {0} a été supprimé.\n", objet.ToString());
     }
     else
     {
         Console.WriteLine("x-x La collection ne contient pas cet objet {0}.\n", objet.ToString());
     }
 }
예제 #5
0
 /// <summary>
 /// Supprime l'objet mis en paramètre
 /// </summary>
 /// <param name="objet">L'objet que l'on veut Supprimer</param>
 public void Supprimer(Coureur objet)
 {
     Console.WriteLine("\n------ Suppression ------ \n");
     if (_stack.Contains(objet))
     {
         Stack <Coureur> res = new Stack <Coureur>();
         foreach (Coureur entry in _stack)
         {
             if (!entry.Equals(objet))
             {
                 res.Push(entry);
             }
             else
             {
                 Console.WriteLine("L'objet {0} a été supprimé.\n", entry.ToString());
             }
         }
         _stack = res;
     }
     Console.WriteLine("x-x La collection ne contient pas cet objet {0}.\n", objet.ToString());
 }
예제 #6
0
 /// <summary>
 /// Ajout d'un objet dans la collection
 /// </summary>
 /// <param name="objet">L'objet que l'on souhaite Ajouter</param>
 public void Ajouter(Coureur objet)
 {
     Console.WriteLine("\n------ Ajout ------ \n");
     _queue.Enqueue(objet);
     Console.WriteLine("{0} a été ajouté.\n", objet.ToString());
 }