Пример #1
0
        /// <summary>
        /// Cette fonction va permettre de jumeler des tables qui ont le même nombre de places
        /// On ne peut, pour l'instant, que jumeler deux tables
        /// </summary>
        /// <param name=""></param>
        public TableCombinee jumelerTables(TableJumelable table)
        {
            TableCombinee t = null;

            if (!(this.GetType() == t.GetType()) || (table.GetType() == t.GetType()))   // On ne combine pas plusieurs tables qui sont déjà combinés
            {
                Console.WriteLine("Il faut que les deux côtés des tables que vous voulez jumeler aient le même nombre de places ");
                Console.WriteLine("");

                bool   intEntered = false;
                string demande;
                int    monCoteAJumeler = 0, sonCoteAJumeler = 0;
                bool[] mesCotesNonJumeles = this.cotesNonJumele();
                bool[] sesCotesNonJumeles = table.cotesNonJumele();

                while ((intEntered == false) && (mesCotesNonJumeles[monCoteAJumeler] != true))   // Il faut absolument que ce qu'entre l'utilisateur soit un nombre
                {
                    for (int i = 0; i < mesCotesNonJumeles.Length; i++)
                    {
                        if (mesCotesNonJumeles[i] == true)
                        {
                            Console.WriteLine("Côte N°{0}, nombre de places : {1}", i, this.monNbPlaces[i]);
                        }
                    }

                    Console.WriteLine("A quel côté de ma table l'autre serat-telle jumelée ?");
                    Console.Write("-> ");
                    demande    = Console.ReadLine();
                    intEntered = Int32.TryParse(demande, out monCoteAJumeler);
                }
                intEntered = false;

                while ((intEntered == false) && (sesCotesNonJumeles[sonCoteAJumeler] != true))   // Il faut absolument que ce qu'entre l'utilisateur soit un nombre
                {
                    for (int i = 0; i < sesCotesNonJumeles.Length; i++)
                    {
                        if (sesCotesNonJumeles[i] == true)
                        {
                            Console.WriteLine("Côte N°{0}, nombre de places : {1}", i, table.monNbPlaces[i]);
                        }
                    }

                    Console.WriteLine("A quel côté de l'autre table je serai jumelée ?");
                    Console.Write("-> ");
                    demande    = Console.ReadLine();
                    intEntered = Int32.TryParse(demande, out monCoteAJumeler);
                }

                if (this.monNbPlaces[monCoteAJumeler] == table.monNbPlaces[sonCoteAJumeler])
                {
                    this.mesCotesJumeles[monCoteAJumeler]  = table;
                    table.mesCotesJumeles[monCoteAJumeler] = this;
                    int nbCotes = this.nbCotesNonJumele() + table.nbCotesNonJumele();
                    t = new TableCombinee(nbCotes, this, table);
                }
                else
                {
                    Console.WriteLine("Les côtes que vous avez choisi n'ont pas le même nombre de places");
                }
            }


            return(t);
        }
Пример #2
0
 public void ajouterTable(TableJumelable t)
 {
     MesTablesMeComposant.Add(t);
 }
Пример #3
0
        /// <summary>
        /// Cette fonction va permettre de
        /// </summary>
        /// <param name=""></param>
        public List <TableJumelable> dejumelerTables(TableJumelable table)
        {
            List <TableJumelable> list = new List <TableJumelable>();

            return(list);
        }
Пример #4
0
 public TableCombinee(int nbCotes, TableJumelable t1, TableJumelable t2)  : base(nbCotes)
 {
     ajouterTable(t1);
     ajouterTable(t2);
 }