Ütemezés (2023 májusa)
Kategória: python - emelt szint
Feladat leírása

A diákok hasznos nyári időtöltését biztosítják a különböző nyári táborok. Egy iskolai
osztályban felmérték, kik melyiken vennének részt szívesen. Ebben a feladatban az előzetes
igényfelmérés adatait dolgozzuk fel.
A taborok.txt tabulátorokkal tagolt fájl soronként egy tábor adatait tartalmazza.
Az állomány legfeljebb 100 sorból áll. Az első két számpár a tábor első és utolsó napjának
dátuma. A számpárok első értéke a hónap, a második a nap sorszáma. Mivel a nyári szünet
programjairól van szó, csak június 16. és augusztus 31. közötti dátumok szerepelhetnek. Ezt
követik azon diákok betűjelei, akik érdeklődnek a tábor iránt, végül a tábor témája olvasható.
A diákok betűjele az angol ábécé egy nagybetűs karaktere, a tábor témája egyetlen
ékezetmentes szó.
A második sorban egy színjátszó tábor adatai szerepelnek. A tábor július 14-én kezdődik és
július 21-én fejeződik be, tehát összesen 8 napos, és ez az F, P, U, Y betűjelekkel azonosított
tanulókat érdekli
Készítsen programot, amely az állomány adatait felhasználva megoldja az alábbi
feladatokat! A program forráskódját mentse utemez néven! A program megírásakor
a felhasználó által megadott adatok helyességét, érvényességét nem kell ellenőriznie, és
feltételezheti, hogy a beolvasandó adatok a leírtaknak megfelelnek.
A képernyőre írást igénylő részfeladatok esetén – a mintához tartalmában hasonlóan – írja
ki a képernyőre a feladat sorszámát (például: 2. feladat), és utaljon a kiírt tartalomra is!
Ha a felhasználótól kér be adatot, jelenítse meg a képernyőn, hogy milyen értéket vár! Mindkét
esetben az ékezetmentes kiírás is elfogadott.
Részfeladatok
1. Olvassa be, és tárolja el a taborok.txt állomány tartalmát!
2. Jelenítse meg a képernyőn, hogy hány tábor adatait tartalmazza a bemeneti fájl! Írja a képernyőre az elsőként és az utolsóként rögzített tábor témáját!
3. Írja a képernyőre, mikor kezdődik a „zenei” tábor! Ha több ilyen tábor is volt, az összeset jelenítse meg a lenti mintának megfelelően! Ha egy sem volt, akkor a „Nem volt zenei tábor.” szöveget jelenítse meg a képernyőn!
4. Keresse meg, melyik táborba jelentkeztek a legtöbben! Írja a képernyőre a tábor kezdő dátumát és a témáját! Ha több ilyen tábor is van, az összeset jelenítse meg!
5. Készítsen függvényt sorszam néven, amely megadja, hogy a paraméterként kapott hónap és nap a nyári szünet hányadik napja! A dátumot a függvény két egész számként kapja meg, a visszaadott érték egy egész szám legyen! A nyári szünet első napja június (6. hó) 16. A nyári szünet 77. napja augusztus (8. hó) 31. (A nyári hónapok rendre 30, 31, 31 naposak.) A későbbi feladatok megoldásánál ezt a függvényt felhasználhatja.
6. Kérjen be a felhasználótól egy dátumot a lenti mintának megfelelően, majd adja meg, hány tábor zajlik éppen ekkor!
7. Olvassa be egy tanuló betűjelét! Határozza meg, hogy az adott betűjelű tanuló mely táborok iránt érdeklődött! A táborok adatait kezdő dátum szerint növekvő sorrendben írja az egytanulo.txt fájlba a minta formátumának megfelelően! Jelenítse meg a képernyőn, hogy a tanuló mindegyiken részt tud-e venni, azaz nincs-e olyan nap, amelyen több táborban kellene lennie!