Example #1
0
        static void Main(string[] args)
        {
            int  amount  = 0;
            bool correct = false;

            while (!correct)
            {
                Console.WriteLine("Hoeveel random dieren wil je verdelen?");
                string input = Console.ReadLine();
                if (int.TryParse(input, out int inputAmount))
                {
                    amount  = inputAmount;
                    correct = true;
                }
                else
                {
                    Console.Clear();
                    Console.WriteLine("Vul een geldig getal in");
                }
            }


            List <Dier> dieren = DierFactory.randomDieren(amount);

            Printer.PrintDieren("random gegenereerde dieren: ", dieren);



            Ordener ordener = new Ordener();

            dieren = ordener.OrdenDieren(dieren);
            Printer.PrintDieren("Dieren geordend op type en groote:", dieren);


            Trein trein = new Trein();

            trein.AddDieren(dieren);
            trein.VerdeelDieren();
            Console.WriteLine(trein.ToString());
        }
Example #2
0
        public void VerdeelDieren()
        {
            //Orden Dieren
            Ordener ordener = new Ordener();

            dieren = ordener.OrdenDieren(dieren);

            //Per wagon kijken of dier erbij past.
            while (dieren.Count > 0)
            {
                trein.Add(new Wagon());
                for (int d = 0; d < dieren.Count; d++)
                {
                    Wagon lastWagon = trein[trein.Count - 1];
                    Dier  dier      = dieren[d];
                    if (lastWagon.TryAndAddDier(dier))
                    {
                        dieren.Remove(dier);
                        d = -1;
                    }
                }
            }
        }