예제 #1
0
        public static void RaktarbaPakolasMoho()
        {
            LancoltLista <Csomag> Kimenet     = new LancoltLista <Csomag>();
            LancoltLista <Csomag> SegedCsomag = KiszallítasraVaroCsomagok.CsakBeolvas("Meghiúsultszállítások.txt");

            if (OsszMeret(Kimenet) <= raktarmeret) // megnézzük h az összes csomag befér-e a raktárba
            {
                foreach (Csomag akt in SegedCsomag)
                {
                    Kimenet.PrioritasBerakCsokkeno(akt, akt.Meret);
                }
            }
            else // ha nem, mohó algoritmussal bepakoljuk amit tudunk a többit pedig visszavisszük a küldőnek
            {
                Kimenet = ListaRendezErtek(SegedCsomag);
                SegedCsomag.EgeszListaTorles();
                foreach (Csomag akt in SegedCsomag)
                {
                    if (OsszMeret(Kimenet) < raktarmeret)
                    {
                        SegedCsomag.PrioritasBerakCsokkeno(akt, akt.Ertek);
                    }
                }
            }
            Kimenet = SegedCsomag;
            foreach (Csomag akt in Kimenet)
            {
                KiszallitandoCsomagKeszit.Kiirat(akt, "BeolvasniValoTxt.txt");
            }
        }
예제 #2
0
        static LancoltLista <Csomag> RendezettenBeolvas(string honnan)
        {
            LancoltLista <Csomag> Csomagok;
            int maxindex = KiszallítasraVaroCsomagok.SorokSzama(honnan);

            Csomagok = KiszallítasraVaroCsomagok.CsakBeolvas(honnan);
            return(Csomagok);
        }