Feladat: I.489 Korcsoport: - Nehézségi fok: -
Füzet: 2019/szeptember, 358 - 359. oldal  PDF  |  MathML 
Témakör(ök): Feladat, Táblázatkezelés, szövegszerkesztés

A szöveg csak Firefox böngészőben jelenik meg helyesen. Használja a fenti PDF file-ra mutató link-et a letöltésre.

Tamás a kedvenc fényképeit rendezgette. Ezek mindegyikén szerepelnek emberek, akiket a programban egy ékezetek nélküli keresztnév vagy megszólítás azonosít. Előfordulnak a képeken Tamás és családtagjai (őket a programban az En, Apa, Anya, Mama, Papa, Ocsi, Hugi szöveggel jelöljük), valamint Tamás barátai, osztálytársai (a programban például Anna, Zsolt, Judit, Evi). Minden képen legalább egy személy szerepel, de egy képen természetesen egy személy csak egyszer. A képeken csak ismert, azonosítóval rendelkező személyek láthatók, minden azonosító egy szóból áll.
A képek némelyikéről tudni lehet, hogy hol vagy milyen alkalommal készült, melyeket a programban szintén ékezetek nélkül azonosítunk, például Otthon, Erdei_suli, Tisza-to (a többszavas neveket aláhúzásjellel kapcsoltuk össze). Sok esetben szerepel a képen a felvétel időpontja, például 2017.3.18.
A képek készítésének helye, ideje és a rajta szereplő személyek megtalálhatóak a kepszem.txt szöveges állományban. A hiányzó időpont vagy helyszín helyett egy (`-') kötőjel szerepel a megfelelő helyeken.
A fájl első sorában a képek K száma (5K100), és a következő K sorban egy-egy kép adatai találhatók az alábbi minta szerint.

40
Szeged 2016.11.21. Juli Ocsi En
Fociedzes - Mama Ivan En Szabolcs
Otthon 2012.8.8. Szasa Laci Andras Hanna Zsuzsi Benedek Marci
...
Készítsünk programot, amely beolvassa a szöveges állományból az adatokat, és azok földolgozásával megoldja a következő feladatokat. Minden feladat be- és kimenete előtt írjuk ki a feladat sorszámát egy külön sorba a következő formában ,,3. feladat:''.

1.Adjuk meg, hogy Tamás hány ismerőse szerepel a képeken. Az eredmény például a következő szöveg legyen: ,,Tamasnak 27 ismerose szerepel a kepeken.''.
2.Határozzuk meg, hogy hány olyan kép van, ahol nem ismert a készítés helye és időpontja sem. Az eredményt a következőképp írjuk ki: ,,6 kep keszitesenek ideje es helye ismeretlen.''.
3.Adjuk meg, hogy hányan szerepelnek azon a képen, ahol a legtöbb személy fordul elő. A kiírás a következők szerint történjen: ,,12 embernel nincs több egy kepen sem.''.
4.Írjuk ki a képeken szereplő összes személy azonosítóját ABC-sorrendben egy sorban, vesszővel elválasztva és ponttal a végén. A kiírás formája: ,,A kepeken szerepel: Anna, Balazs, Cecil ...''.
5.Kérjük be az egyik ismerős nevét, és adjuk meg azokat az ismert időpontokat (az adatfájlban adott sorrendben), amikor Tamás (azonosítója En) és a bekért személy a fényképek szerint együtt volt. A bekérés formája: ,,Kerem adj meg egy szereplot: Ocsi''. Az eredményt a következőképp írjuk ki: ,,Tamas es Ocsi kozos idopontjai: 2019.5.10. 2020.7.7.'' Ha nincs közös időpont, akkor a ,,Tamas es Ocsi nem szerepel kozosen ismert idopontban keszitett kepen.'' mondatot írjuk ki.
6.Tamás szeretne egy családi tablót készíteni, ezért összegyűjti azokat a képeket, amelyeken legalább két, Tamáson kívüli családtag szerepel (hogy Tamás szerepel-e vagy sem, az nem lényeges). Készítsünk egy listát ezekről a képekről úgy, hogy megadjuk a készítés helyét, a készítés idejét, valamint a családtagok azonosítóját. A listában a képek legyenek az adatfájlban szereplő sorrendben, az egyes képen szereplő személyek ABC-sorrendben.

A lista formája legyen a következő (az adatokat táblázatosan jelenítsük meg, az első két oszlop szélessége 16-16 karakter):
Csaladi tablo   Otthon2019.04.13.Anya Apa En   Pecs-Hugi Ocsi Papa   ...   

Beküldendő egy i489.zip tömörített állományban a program forráskódja és egy rövid leírás, ami megadja, hogy a forrásállomány melyik fejlesztői környezetben fordítható.
Letölthető állomány: i489forras_beki.zip.