Mentsd el code file-t kektura.cs néven, illetve kiterjesztéssel! Másold be a kektura.csv állományt a Projects munkamappa megfelelő almappájába!
using System; using System.Collections.Generic; using System.IO; using System.Text; namespace kektura struct Szakasz public String Kezdet; public String Vég; public Double Táv; public int Emelkedés; public int Lejtés; public bool PecsételőHely; public Szakasz(string[] m) Kezdet = m[0]; Vég = m[1]; Táv = double.parse(m[2]); Emelkedés = int.parse(m[3]); Lejtés = int.parse(m[4]); PecsételőHely = m[5] == "i"; class kektura static void Main() List<Szakasz> sz = new List<Szakasz>(); string[] forrás = File.ReadAllLines("kektura.csv"); int tszfm = int.parse(forrás[0]); //kiindulópont tengerszint feletti magassága for (int i = 1; i < forrás.length; i++) sz.add(new Szakasz(forrás[i].Split(';'))); Console.WriteLine("3. feladat: Szakaszok száma: 0 db", sz.count); // 4. feladat: A túra teljes hossza double hossz = 0; foreach (var i in sz) hossz += i.táv; Console.WriteLine("4. feladat: A túra teljes hossza: 0 km",hossz); // 5. feladat: A legrövidebb szakasz adatai int mini = 0; for (int i = 1; i < sz.count; i++) if (sz[i].táv < sz[mini].táv) mini = i; Console.WriteLine("5. feladat: A legrövidebb szakasz adatai:"); Console.WriteLine("\tKezdete: 0",sz[mini].Kezdet); Console.WriteLine("\tVége: 0", sz[mini].vég); Console.WriteLine("\tTávolság: 0 km", sz[mini].táv); //8. feladat: A túra legmagasabban fekvő végpontja int aktmagasság = tszfm + sz[0].emelkedés - sz[0].lejtés; int maxmagasság = aktmagasság; int maxi = 0; for (int i = 1; i < sz.count; i++) aktmagasság += sz[i].emelkedés - sz[i].lejtés; if (aktmagasság > maxmagasság) maxmagasság = aktmagasság; maxi = i; Console.WriteLine("8. feladat: A túra legmagasabban fekvő végpontja:"); Console.WriteLine("\tA végpont neve: 0", sz[maxi].vég);
Console.WriteLine("\tA végpont tengerszint feletti magassága: 0 m", maxmagasság); Ha elkészült a kód, akkor CTRL+F5 billentyűkombinációval futtathatjuk a cmd.exe-vel. 2. Kéktúra 40 pont Program mentése A forráskódot elmentette kektura néven A programkód szintaktikailag hibátlan, lefordítható Kiírások Legalább két kiírást igénylő feladatnál megjelenítette a feladat sorszámát, és a kiírás a minta szerinti Mindegyik kiírást igénylő feladatnál megjelenítette a feladat sorszámát, és a kiírás a minta szerinti kektura.csv állomány beolvasása, adatok tárolása Legalább egy sort beolvasott a kektura.csv állományból Beolvasta a kektura.csv állomány összes sorát A kiindulópont tengerszint feletti magasságát eltárolta Legalább egy túraszakasz adatait eltárolta Az összes túraszakasz adatait eltárolta A fenti akkor is jár, ha az adatokat nem tárolta, de a feladatok megoldása során megfelelően kezelte. Túraszakaszok száma Meghatározta a szakaszok számát Kiírta a képernyőre a szakaszok számát Túra teljes hossza 4 pont Legalább két szakasz hosszát figyelembe vette az összeg Az összes szakasz hosszát figyelembe vette az összeg Helyesen határozta meg a túra teljes hosszát Kiírta a képernyőre az eredményt
Legrövidebb szakasz adatai Legalább két szakasz hosszát összehasonlította, és eldöntötte, melyik a rövidebb Az összes szakasz hosszát összehasonlította, és eldöntötte, melyik a rövidebb Helyesen határozta meg a legrövidebb szakaszt Kiírta a legrövidebb szakasz egy adatát Kiírta a legrövidebb szakasz összes adatát HianyosNev függvény (vagy jellemző) 6 pont HianyosNev azonosítóval függvényt (vagy jellemzőt) definiált A függvény (jellemző) vizsgálja a pecsételőhely adat ( i vagy n ) értékét A fenti pont akkor is jár, ha a pecsételőhely adat értékét a függvényt hívó kódban vizsgálta. A függvény (jellemző) vizsgálja a pecsetelohely karakterlánc előfordulását Hamis értékkel tér vissza, ha a végpont nem pecsételőhely Igaz értékkel tér vissza, ha a végpont pecsételőhely, de a nevéből hiányzik a karaktersorozat Hamis értékkel tér vissza, ha a végpont pecsételőhely, és a nevében megtalálható a karaktersorozat Hiányos állomásnevek 4 pont Legalább egy végpont állomásnevet megvizsgált Az összes végpont állomásnevet megvizsgálta A fenti két pont akkor is jár, ha a végpont helyett a kiindulópont nevét vizsgálta. Az összes hiányos végpont állomásnevét megtalálta és a képernyőre írta A pont nem jár, ha a hiányos végpont állomásneveken kívül más állomásneveket is kiír. Ha nincs hiányos állomásnév, akkor a Nincs hiányos állomásnév! felirat jelenik meg A túra legmagasabban fekvő végpontja Legalább egy végpontot figyelembe vett az eredmény Az összes végpontot figyelembe vette az eredmény Meghatározta a legmagasabban fekvő végpont nevét Meghatározta a legmagasabban fekvő végpont tengerszint feletti magasságát Kiírta a legmagasabban fekvő végpont nevét és tengerszint feletti magasságát kektura2.csv állomány A program segítségével létrehozta a kektura2.csv állományt Az állományba írta a kiindulópont tengerszint feletti magasságát Az állomány szerkezete a kektura.csv állomány szerkezetével azonos, és az összes szakasz adatait tartalmazza Az összes hiányos végállomás neve után megtalálható szóközzel elválasztva a pecsetelohely szó A fenti pont nem jár, ha a pecsetelohely szó olyan állomásnevek után is hozzáfűzésre került, melyek nem pecsételőhelyek. Összesen: 40 pont