Пример #1
0
        static void Main(string[] args)
        {
            try
            {
                var m1     = new HadtortenetiMuzeum();
                var csucs1 = new Csucs(m1);

                var m2     = new IparmuveszetiMuzeum();
                var csucs2 = new Csucs(m2);

                var m3     = new NeprajziMuzeum();
                var csucs3 = new Csucs(m3);

                var m4     = new SzepmuveszetiMuzeum();
                var csucs4 = new Csucs(m4);

                var m5     = new Babamuzeum();
                var csucs5 = new Csucs(m5);

                m1.HasonloMuzeumokElejereBeszur(m2);
                m1.HasonloMuzeumokElejereBeszur(m3);
                m1.HasonloMuzeumokElejereBeszur(m4);

                var hasonlo = m1.HasonloMuzeumok();

                m1.HasonloMuzeumTorol(m3);

                var hasonlo2 = m1.HasonloMuzeumok();


                var graf = new Graf();
                graf.CsucsHozzaad(csucs1);
                graf.CsucsHozzaad(csucs2);
                graf.CsucsHozzaad(csucs3);
                graf.CsucsHozzaad(csucs4);
                graf.CsucsHozzaad(csucs5);

                var el1_2 = new El(csucs1, csucs2, 10);
                var el1_3 = new El(csucs1, csucs3, 1);
                var el1_4 = new El(csucs1, csucs4, 1);
                var el2_3 = new El(csucs3, csucs2, 2);
                var el2_4 = new El(csucs2, csucs2, 4);
                var el3_4 = new El(csucs3, csucs4, 1);
                var el4_5 = new El(csucs4, csucs5, 1);

                graf.ElHozzaad(el1_2);
                graf.ElHozzaad(el1_3);
                graf.ElHozzaad(el1_4);
                graf.ElHozzaad(el2_3);
                graf.ElHozzaad(el2_4);
                graf.ElHozzaad(el3_4);
                graf.ElHozzaad(el4_5);

                var utvonalGraf = graf.UtvonalGraf(csucs1, csucs5, new[] { csucs3 });

                graf.EleketFrissit(RandomEl);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }

            Console.ReadKey();
        }
Пример #2
0
        static void Main(string[] args)
        {
            #region Látványosságokat és csúcsokat létrehoz
            var budaiVar             = new Var("Budai vár", 4500, Latvanyossagok.ErdekessegiSzint.EgészJó);
            var budaivarCsucs        = new Csucs(budaiVar);
            var matyasTemplom        = new Templom("Mátyás Templom", 1800, Latvanyossagok.ErdekessegiSzint.NagyonJó);
            var matyasTemplomCsucs   = new Csucs(matyasTemplom);
            var halaszBastya         = new Kilato("Halászbástya", 4500, Latvanyossagok.ErdekessegiSzint.EgészJó);
            var halaszBastyaCsucs    = new Csucs(halaszBastya);
            var citadella            = new Kilato("Citadella", 4500, Latvanyossagok.ErdekessegiSzint.EgészJó);
            var citadellaCsucs       = new Csucs(citadella);
            var parlament            = new Egyeb("Parlament", 4500, Latvanyossagok.ErdekessegiSzint.EgészJó);
            var parlamentCsucs       = new Csucs(parlament);
            var gellertFurdo         = new Furdo("Gellért fürdő", 4500, Latvanyossagok.ErdekessegiSzint.EgészJó);
            var gellertFurdoCsucs    = new Csucs(gellertFurdo);
            var margitSziget         = new Egyeb("Margit Sziget", 4500, Latvanyossagok.ErdekessegiSzint.EgészJó);
            var margitSzigetCsucs    = new Csucs(margitSziget);
            var budapestEye          = new Kilato("Budapest Eye", 4500, Latvanyossagok.ErdekessegiSzint.EgészJó);
            var budapestEyeCsucs     = new Csucs(budapestEye);
            var bazilika             = new Templom("Szent István Bazilika", 1000, Latvanyossagok.ErdekessegiSzint.NagyonJó);
            var bazilikaCsucs        = new Csucs(bazilika);
            var zsinagoga            = new Templom("Dohány utcai Zsinagóga", 4500, Latvanyossagok.ErdekessegiSzint.EgészJó);
            var zsinagogaCsucs       = new Csucs(zsinagoga);
            var hosokTere            = new Egyeb("Hősök tere", 4500, Latvanyossagok.ErdekessegiSzint.EgészJó);
            var hosokTereCsucs       = new Csucs(hosokTere);
            var vajdaHunyadVara      = new Var("Vajdahunyad vára", 4500, Latvanyossagok.ErdekessegiSzint.EgészJó);
            var vajdaHunyadVaraCsucs = new Csucs(vajdaHunyadVara);
            var szechenyiFurdo       = new Furdo("Széchenyi fürdő", 4500, Latvanyossagok.ErdekessegiSzint.EgészJó);
            var szechenyiFurdoCsucs  = new Csucs(szechenyiFurdo);

            //Várak
            budaiVar.HasonloLatvanyossagHozzaad(vajdaHunyadVara);
            vajdaHunyadVara.HasonloLatvanyossagHozzaad(budaiVar);
            //Egyéb
            parlament.HasonloLatvanyossagHozzaad(margitSziget);
            parlament.HasonloLatvanyossagHozzaad(hosokTere);
            margitSziget.HasonloLatvanyossagHozzaad(parlament);
            margitSziget.HasonloLatvanyossagHozzaad(hosokTere);
            hosokTere.HasonloLatvanyossagHozzaad(parlament);
            hosokTere.HasonloLatvanyossagHozzaad(margitSziget);
            //Fürdők
            gellertFurdo.HasonloLatvanyossagHozzaad(szechenyiFurdo);
            szechenyiFurdo.HasonloLatvanyossagHozzaad(gellertFurdo);
            //Kilátók
            halaszBastya.HasonloLatvanyossagHozzaad(citadella);
            halaszBastya.HasonloLatvanyossagHozzaad(budapestEye);
            citadella.HasonloLatvanyossagHozzaad(halaszBastya);
            citadella.HasonloLatvanyossagHozzaad(budapestEye);
            budapestEye.HasonloLatvanyossagHozzaad(halaszBastya);
            budapestEye.HasonloLatvanyossagHozzaad(citadella);
            //Templomok
            matyasTemplom.HasonloLatvanyossagHozzaad(bazilika);
            matyasTemplom.HasonloLatvanyossagHozzaad(zsinagoga);
            bazilika.HasonloLatvanyossagHozzaad(matyasTemplom);
            bazilika.HasonloLatvanyossagHozzaad(zsinagoga);
            zsinagoga.HasonloLatvanyossagHozzaad(matyasTemplom);
            zsinagoga.HasonloLatvanyossagHozzaad(bazilika);



            #endregion

            #region gráfok
            #region gráf létrehozása, csúcsok felvétele
            Graf graf = new Graf();
            graf.UjCsucs(budaivarCsucs);
            graf.UjCsucs(matyasTemplomCsucs);
            graf.UjCsucs(halaszBastyaCsucs);
            graf.UjCsucs(citadellaCsucs);
            graf.UjCsucs(parlamentCsucs);
            graf.UjCsucs(gellertFurdoCsucs);
            graf.UjCsucs(margitSzigetCsucs);
            graf.UjCsucs(budapestEyeCsucs);
            graf.UjCsucs(bazilikaCsucs);
            graf.UjCsucs(zsinagogaCsucs);
            graf.UjCsucs(hosokTereCsucs);
            graf.UjCsucs(vajdaHunyadVaraCsucs);
            graf.UjCsucs(szechenyiFurdoCsucs);
            #endregion
            #region Élek hozzáadása
            graf.ElHozzaad(new El(budaivarCsucs, matyasTemplomCsucs, 1));
            graf.ElHozzaad(new El(budaivarCsucs, halaszBastyaCsucs, 1));
            graf.ElHozzaad(new El(matyasTemplomCsucs, parlamentCsucs, 3));
            graf.ElHozzaad(new El(halaszBastyaCsucs, matyasTemplomCsucs, 1));
            // graf.ElHozzaad(new El(citadellaCsucs, budaivarCsucs, 5));
            // graf.ElHozzaad(new El(parlamentCsucs, gellertFurdoCsucs, 3));
            graf.ElHozzaad(new El(parlamentCsucs, margitSzigetCsucs, 5));
            graf.ElHozzaad(new El(parlamentCsucs, budapestEyeCsucs, 2));
            graf.ElHozzaad(new El(parlamentCsucs, bazilikaCsucs, 2));
            graf.ElHozzaad(new El(parlamentCsucs, zsinagogaCsucs, 2));
            graf.ElHozzaad(new El(parlamentCsucs, hosokTereCsucs, 4));
            // graf.ElHozzaad(new El(parlamentCsucs, citadellaCsucs, 5));
            graf.ElHozzaad(new El(gellertFurdoCsucs, parlamentCsucs, 3));
            graf.ElHozzaad(new El(margitSzigetCsucs, budapestEyeCsucs, 3));
            graf.ElHozzaad(new El(budapestEyeCsucs, bazilikaCsucs, 1));
            // graf.ElHozzaad(new El(bazilikaCsucs, parlamentCsucs, 2));
            graf.ElHozzaad(new El(bazilikaCsucs, zsinagogaCsucs, 2));
            graf.ElHozzaad(new El(zsinagogaCsucs, hosokTereCsucs, 4));
            graf.ElHozzaad(new El(hosokTereCsucs, vajdaHunyadVaraCsucs, 1));
            graf.ElHozzaad(new El(vajdaHunyadVaraCsucs, szechenyiFurdoCsucs, 1));
            // graf.ElHozzaad(new El(szechenyiFurdoCsucs, parlamentCsucs, 5));
            #endregion


            #endregion


            Console.WriteLine("------------------ FŐ PROGRAM -------");

            Turista turista;
            string  nev;

            Console.WriteLine("Kérlek, add meg a neved!");
            nev = Console.ReadLine();

            turista = new Turista(nev);

            while (true)
            {
                Console.Clear();
                GrafCsucsokFelhasznaloValasztashoz(graf);
                Console.WriteLine("Kedves {0}! Kérlek, válassz kiindulási pontot!\n", turista.Nev);
                int indulas = Convert.ToInt16(Console.ReadLine());
                Console.WriteLine(graf.Csucsok[indulas].Latvanyossag.Nev);

                Console.WriteLine("Kedves {0}! Kérlek, válassz célpontot!\n", turista.Nev);
                int erkezes = Convert.ToInt16(Console.ReadLine());
                Console.WriteLine(graf.Csucsok[erkezes].Latvanyossag.Nev);


                Console.WriteLine();

                // Dijkstra.DijkstraAlgo(GrafToMatrix(graf), 0, 8, graf);
                //TombKiir(GrafToMatrix(graf));
                Map terkep = new Map();

                List <Csucs> utvonal = Utkereses.LegrovidebbUt(terkep, graf.Csucsok[indulas], graf.Csucsok[erkezes], graf);
                turista.Utvonal = utvonal;

                turista.Utvonal.Add(budaivarCsucs);
                turista.Utvonal.Add(parlamentCsucs);


                foreach (Csucs latvany in turista.Utvonal)
                {
                    Console.Write(latvany.Latvanyossag.Nev + " => ");
                }

                Console.WriteLine("VEGE");
                Console.ReadLine();
            }
        }