Example #1
0
        static void Hetedik()
        {
            // Fájl írása
            Console.WriteLine("7. feladat");
            try
            {
                using (FileStream fs = new FileStream("kepviselok.txt", FileMode.OpenOrCreate, FileAccess.Write, FileShare.None))
                    using (StreamWriter sw = new StreamWriter(fs))
                    {
                        // Összeszedjük a kerületek szerint a szavazatokat, majd rendezzük a gyűjteményt a kerület száma szerint
                        IOrderedEnumerable <IGrouping <uint, Szavazat> > valasztokeruletek_szavazatai =
                            Szavazatok.GroupBy <Szavazat, uint, Szavazat>(
                                keySelector: csoport => csoport.Valasztokerulet,
                                elementSelector: szav => szav).
                            OrderBy(order => order.Key);

                        foreach (IGrouping <uint, Szavazat> egy_valasztokerulet in valasztokeruletek_szavazatai)
                        {
                            // Meghatározzuk az adott kerületben (ahol a két érték egyezik) elért maximális szavazatot
                            uint max_szavazat_a_keruletben = Szavazatok.
                                                             Where(kerulet => kerulet.Valasztokerulet == egy_valasztokerulet.Key).
                                                             Max(mi_a_max => mi_a_max.SzavazatSzam);

                            // Megkeressük a nyertes jelöltet
                            // (a .First() a végén visszaadja az első elemet az IEnumerable<>-ből.)
                            // (Feltételezzük, hogy csak egy nyertes van.)
                            Szavazat nyertes = Szavazatok.
                                               Where <Szavazat>(kerulet => kerulet.Valasztokerulet == egy_valasztokerulet.Key).
                                               Where <Szavazat>(szavazatszam => szavazatszam.SzavazatSzam == max_szavazat_a_keruletben).First();

                            // Kiírjuk az adatokat a fájlba
                            sw.WriteLine(Convert.ToString(egy_valasztokerulet.Key) + ". " +
                                         nyertes.Vezeteknev + " " + nyertes.Utonev + " (" +
                                         (nyertes.Part == "-" ? "független" : nyertes.Part) + ")");
                        }
                    }
            }
            catch (Exception e)
            {
                Console.WriteLine("Nem sikerült a 'kepviselok.txt' állomány írása.");
                Console.WriteLine(e.Message);

                Console.WriteLine("ENTER kilép.");
                Environment.Exit(0);
            }

            Console.WriteLine("Az állomány (kepviselok.txt) elkészült.");
        }
Example #2
0
        static void Elso()
        {
            // Fájl beolvasása
            try
            {
                using (FileStream szavazatokFajl = new FileStream("szavazatok.txt", FileMode.Open, FileAccess.Read))
                using (StreamReader sr = new StreamReader(szavazatokFajl))
                {
                    while (!sr.EndOfStream)
                    {
                        // A bemeneti fájl szöveges sorokat tartalmaz. Ezt olvassuk, daraboljuk...
                        string sor = sr.ReadLine();
                        string[] elemek = sor.Split(' ');

                        try
                        {
                            // ...és tároljuk.
                            Szavazat egy_szavazat = new Szavazat(
                                Convert.ToUInt32(elemek[0]),
                                Convert.ToUInt32(elemek[1]),
                                elemek[2],
                                elemek[3],
                                elemek[4]);

                            Szavazatok.Add(egy_szavazat);
                        }
                        catch (Exception e)
                        {
                            Console.WriteLine("Nem sikerült a fájl beolvasása: " + e.Message);
                            continue;
                        }
                    }
                }
            }
            catch (Exception e)
            {
                Console.WriteLine("A fájl beolvasása során hiba történt.");
                Console.WriteLine(e.Message);

                Console.WriteLine("A program nem futhat tovább! ENTER kilép.");
                Console.ReadLine();
                Environment.Exit(1);
            }
        }
Example #3
0
        static void Elso()
        {
            // Fájl beolvasása
            try
            {
                using (FileStream szavazatokFajl = new FileStream("szavazatok.txt", FileMode.Open, FileAccess.Read))
                    using (StreamReader sr = new StreamReader(szavazatokFajl))
                    {
                        while (!sr.EndOfStream)
                        {
                            // A bemeneti fájl szöveges sorokat tartalmaz. Ezt olvassuk, daraboljuk...
                            string   sor    = sr.ReadLine();
                            string[] elemek = sor.Split(' ');

                            try
                            {
                                // ...és tároljuk.
                                Szavazat egy_szavazat = new Szavazat(
                                    Convert.ToUInt32(elemek[0]),
                                    Convert.ToUInt32(elemek[1]),
                                    elemek[2],
                                    elemek[3],
                                    elemek[4]);

                                Szavazatok.Add(egy_szavazat);
                            }
                            catch (Exception e)
                            {
                                Console.WriteLine("Nem sikerült a fájl beolvasása: " + e.Message);
                                continue;
                            }
                        }
                    }
            }
            catch (Exception e)
            {
                Console.WriteLine("A fájl beolvasása során hiba történt.");
                Console.WriteLine(e.Message);

                Console.WriteLine("A program nem futhat tovább! ENTER kilép.");
                Console.ReadLine();
                Environment.Exit(1);
            }
        }