namespace _2024._09._19
{
    internal class Program
    {
        static void Main(string[] args)
        {
            List<Alkalmazottak> alkalmazottakLista = new List<Alkalmazottak>();
            using (StreamReader sr = new StreamReader("alkalmazottak.txt"))
            {
                string[] sor = sr.ReadLine().Split(",");
                while (!sr.EndOfStream)
                {
                    sor = sr.ReadLine().Split(",");
                    Alkalmazottak alkalmazottak = new Alkalmazottak(sor[0], int.Parse(sor[1]));
                    alkalmazottakLista.Add(alkalmazottak);
                }
            }

            Console.WriteLine($"Az összesített fizetés: {alkalmazottakLista.Sum(i => i.Fizetes)}");
            Console.WriteLine($"Az átlagfizetés: {alkalmazottakLista.Average(i => i.Fizetes)}");

            List<Termekek> termekekLista = new List<Termekek>();

            using (StreamReader sr = new StreamReader("termekek.csv"))
            {
                string[] sor = sr.ReadLine().Split(";");
                while (!sr.EndOfStream)
                {
                    sor = sr.ReadLine().Split(";");
                    Termekek termekek = new Termekek(sor);
                    termekekLista.Add(termekek);
                }
            }
            var osszesTermek = termekekLista.Select(i => i.Nev);
            var hanyTermek = termekekLista
                .GroupBy(i => i.Kategoria)
                .Select(j => new { Ktg = j.Key, Db = j.Count() });
            Console.WriteLine("Az összes termék:");
            foreach (var elem in osszesTermek)
            {
                Console.WriteLine($"\t{elem}");
            }

            foreach (var elem in hanyTermek)
            {
                Console.WriteLine($"{elem.Ktg}: {elem.Db}");
            }
            Console.WriteLine($"A legolcsóbb termék: {termekekLista.Min(i => i.Ar)} Ft");
            Console.WriteLine($"A legdrágább termék: {termekekLista.Max(i => i.Ar)} Ft");
        }
    }
}
