2021. február 23., kedd

2021.02.23. Elmélet ismétlés, gyakorlás (városok OOP 2.0)

 Ellenőriztük az elmélet tesztek eredményét. További, gyakorlati feladatmegoldással párhuzamos házi feladat tanulni a két elméleti témakört.

Továbbhaladtunk a városos feladatsorral.

Házi feladat megoldani végig minden feladatot.

Eddig jutottunk:

using System;

using System.IO;

using System.Linq;

using System.Collections.Generic;



namespace varosokOOP
{

    class Varosok

    {

        public string nev;

        public int lakszam;

        public int bptav;

        public string mszek;



        public Varosok(string sor)

        {

            List<stringatmen = sor.Split(' ').ToList();

            nev = atmen[0];

            lakszam = Convert.ToInt32(atmen[1]);

            bptav = Convert.ToInt32(atmen[2]);

            if (atmen.Count == 4)

            {

                mszek = "nem";

            }

            else

            {

                mszek = "igen";

            }

        }



        public string kiir()

        {

            string kiiras = $"Város neve: {nev}, Lakosok száma: {lakszam}, Távolsága Budapesttől: {bptav}, Megyeszékhely: {mszek}";

            return kiiras;

        }

    }



    class Program

    {
        static string messzebbVaros(List<Varosoka)
        {
            int messze = a[0].bptav;
            int index = 0;
            for (int i = 0; i < a.Counti++)
            {
                if (messze < a[i].bptav)
                {
                    messze = a[i].bptav;
                    index = i;
                }
            }
            return a[index].nev;
        }

        static string kevesebbLakos(List<Varosoka)

        {

            int lakos = a[0].lakszam;
            int index = 0;
            for (int i = 0; i < a.Counti++)
            {
                if (lakos > a[i].lakszam)
                {
                    lakos = a[i].lakszam;
                    index = i;
                }
            }
            return a[index].nev;

        }
        static void Main(string[] args)

        {

            //A program neve legyen: varosok. 

            //A tanult objektum-orientált programszerkezetet használd a megoldásnál. 

            //Minden képernyőre író feladat előtt írjuk ki a főprogramban a feladat sorszámát. 

            //A fájl most 5 sort tartalmaz, de a programod készüljön fel arra, 

            //hogy hosszabb, és más tartalmú fájlt is fel tudjon dolgozni. 





            //A programban városok adatait tároljuk. 

            //Az adatok soronként: a város neve, lakosainak száma, Budapesttől mért távolsága, 

            //illetve amelyik város nem megyeszékhely, ott még ez is szerepel: NO. 





            //Ez legyen a varosok.txt tartalma: 

            /* 

            Békéscsaba 59000 210 

            Szolnok 72000 119 

            Kecskemét 112000 93 

            Nyíregyháza 118000 230 NO 

            Miskolc 164000 182 

            */





            //1.feladat: 

            Console.WriteLine("1. feladat");

            //Olvasd be a fájlt, és tárold a tartalmát egy osztálypéldányokat tartalmazó listában. 

            List<Varosokadatok = new List<Varosok>();

            foreach (var z in File.ReadAllLines("varosok.txt"))

            {

                adatok.Add(new Varosok(z));

            }



            //2.feladat: 

            Console.WriteLine("\n2. feladat");

            //Írd ki az adatokat a képernyőre, egy sorba egy város adatait. 

            for (int i = 0; i < adatok.Counti++)

            {

                Console.WriteLine(adatok[i].kiir());

            }



            //3.feladat: 

            Console.WriteLine("\n3. feladat");

            //Írd ki a képernyőre annak a városnak a nevét, és a népességét, amely nem megyeszékhely. 

            //(Ha több ilyen lenne, mindet ki kéne írni.) Ha nincs ilyen, írj ki hibaüzenetet. 

            bool van = false;

            for (int i = 0; i < adatok.Counti++)

            {

                if (adatok[i].mszek == "Nem")

                {

                    van = true;

                    Console.WriteLine($"{adatok[i].nev}, Népesség: {adatok[i].lakszam}");

                }

            }



            if (!van)

            {

                Console.WriteLine("Az összes város megyeszékhely!");

            }



            //4.feladat: 

            Console.WriteLine("\n4. feladat");

            //Írd ki a Budapesttől legtávolabbi város nevét a képernyőre. 
            //A feladatot lehetőleg függvénnyel valósítsd meg. Ha nem függvénnyel valósítod meg, kaphatsz részpontokat.         
            Console.WriteLine($"A legmesszibb város: {messzebbVaros(adatok)}");


            //5.feladat:

            Console.WriteLine("\n5. feladat");

            //Írd ki a legkevesebb lakosú város nevét a képernyőre. 
            //A feladatot lehetőleg függvénnyel valósítsd meg. Ha nem függvénnyel valósítod meg, kaphatsz részpontokat.

            Console.WriteLine($"A legkisebb lakosú város: {kevesebbLakos(adatok)}");


            //6.feladat: 

            Console.WriteLine("\n6. feladat");

            //Kérd meg a felhasználót a főprogramban, hogy adjon meg egy lakosságszámot. 
            //Írd ki a felhasználó által beírt érték fölötti lakosságszámnál nagyobb lakosságú városok neveit, soronként egyet. 

            //Ha nincs ilyen, írj ki hibaüzenetet. 



            //7.feladat: 

            Console.WriteLine("\n7. feladat");

            //Döntsd el, hogy van-e 180 km-nél távolabbi város. Ha találsz ilyet, 

            //írd ki az elsőnek a nevét és a hozzá tartozó km-t. 

            //Ha nincs ilyen, írj ki hibaüzenetet. 



            //8. feladat: 

            Console.WriteLine("\n8. feladat");

            //Írd ki egy új fájlba a városok neveit nagybetűsen, 

            //mögéjük vesszővel elválasztva azt a szót, 

            //hogy megyeszékhely/nem megyeszékhely 

            //(a valóságnak megfelelően). 

        }

    }

}



Nincsenek megjegyzések:

Megjegyzés küldése