コード例 #1
0
ファイル: Program.cs プロジェクト: lunakv/Skola
        void PohniSeSmerem(Vektor smer)
        {
            Vektor novySkladnik = aktualniStav.Skladnik.Posun(smer);
            Vektor novaBedna    = aktualniStav.Bedna;

            if (JeTamZed(novySkladnik) || (JeTamBedna(novySkladnik) && !LzePosunoutBednuSmerem(smer)))
            {
                return;
            }

            if (JeTamBedna(novySkladnik))
            {
                novaBedna = novaBedna.Posun(smer);
            }

            Stav novyStav = new Stav(novySkladnik, novaBedna, aktualniStav.Vzdalenost + 1);

            frontaStavu.Enqueue(novyStav);
        }