Пример #1
0
        static void Main(string[] args)
        {
            List <Isikidom> sikidomok = new List <Isikidom>();
            Kor             kor1      = new Kor(12);
            Kor             kor2      = new Kor(34);
            Teglalap        tegla1    = new Teglalap(12, 5);
            Teglalap        tegla2    = new Teglalap(39, 11);

            sikidomok.Add(kor1);
            sikidomok.Add(kor2);
            sikidomok.Add(tegla1);
            sikidomok.Add(tegla2);

            foreach (var s in sikidomok)
            {
                Console.WriteLine($"K:{s.Kerulet()},T:{s.Terulet()}");
            }
            var osszkerulet = sikidomok.Sum(x => x.Kerulet());
            var osszterulet = sikidomok.Sum(x => x.Terulet());

            //kiválogatás típus szerint
            var korkerulet = sikidomok.Where(x => x.GetType() == typeof(Kor)).Sum(x => x.Kerulet());

            Console.WriteLine($"Körök kerülete:{korkerulet}");

            Console.WriteLine($"Össz. kerület:{osszkerulet},Össz. terület:{osszterulet}");

            Console.ReadKey();
        }
        static void Main(string[] args)
        {
            List <ISikidom> sikidomok = new List <ISikidom>();

            Teglalap t1 = new Teglalap(12, 34);
            Teglalap t2 = new Teglalap(18, 56);
            Teglalap t3 = new Teglalap(49, 56);

            Kor k1 = new Kor(35);
            Kor k2 = new Kor(19);
            Kor k3 = new Kor(98);

            Rombusz r1 = new Rombusz(12, 30);
            Rombusz r2 = new Rombusz(39, 26);
            Rombusz r3 = new Rombusz(51, 39);

            sikidomok.Add(t1);
            sikidomok.Add(t2);
            sikidomok.Add(t3);

            sikidomok.Add(k1);
            sikidomok.Add(k2);
            sikidomok.Add(k3);

            sikidomok.Add(r1);
            sikidomok.Add(r2);
            sikidomok.Add(r3);

            //Síkidomok összes kerülete, területe
            var osszKerulet = sikidomok.Sum(x => x.Kerulet());
            var osszTerulet = sikidomok.Sum(x => x.Terulet());

            Console.WriteLine($"Az kerületek összege:{osszKerulet}");
            Console.WriteLine($"A területek összege:{osszTerulet}");

            //Körök kerülete, területe

            var korKerulet = sikidomok.FindAll(x => x.GetType() == typeof(Kor)).Sum(x => x.Kerulet());

            Console.WriteLine($"A körök kerülete:{korKerulet}");

            var teglalapKerulet = sikidomok.FindAll(x => x.GetType() == typeof(Teglalap)).Average(x => x.Kerulet());

            Console.WriteLine($"A téglalapok kerülete:{teglalapKerulet}");

            //Tetszőleges síkidom megvalósítása
            var rombuszTerulet = sikidomok.FindAll(x => x.GetType() == typeof(Rombusz)).Sum(x => x.Terulet());

            Console.WriteLine($"A rombuszok területe:{rombuszTerulet}");



            Console.ReadKey();
        }