/// <summary>
        /// Besluit op basis van de huidige rij en de kortste rij wat te doen
        /// </summary>
        /// <param name="huidig"></param>
        /// <param name="kortst"></param>
        /// <returns></returns>
        static public KlantActie Besluit(Klant k, Rij huidig, Rij kortst)
        {
            //TODO complexer maken
            if (huidig == null)
            {
                return(KlantActie.WisselNaarKortste);
            }

            if (huidig.RijPositie(k) > (kortst.Count - (k.Geduld)))
            {
                return(KlantActie.WisselNaarKortste);
            }

            return(KlantActie.Blijf);
        }
Exemple #2
0
        /// <summary>
        /// Besluit op basis van de huidige rij en de kortste rij wat te doen
        /// </summary>
        /// <param name="huidig"></param>
        /// <param name="kortst"></param>
        /// <returns></returns>
        static public KlantActie Besluit(Klant k, Rij huidig, Rij kortst)
        {
            //TODO complexer maken
            if (k.Opgeven <= 0 && k.ID != huidig.Head.ID)
            {
                return(KlantActie.GeefOp);
            }

            if (huidig == null)
            {
                return(KlantActie.WisselNaarKortste);
            }

            //if (huidig.RijPositie(k) > (kortst.Count - (k.Geduld)))
            if (k.Geduld < huidig.RijPositie(k) - kortst.Count)
            {
                return(KlantActie.WisselNaarKortste);
            }

            return(KlantActie.Blijf);
        }