Könyvkiadás (2025. május)
Kategória: python - emelt szint
Feladat leírása

A kiadas.txt szöveges állományban a 2020-2023 között legalább 10 000 példányban
kiadott irodalmi művek adatai szerepelnek. A fájl minden sorában egy-egy könyv kiadására
vonatkozó adatok szerepelnek: a kiadás ideje (év és negyedév), a könyv eredete (ma = magyar,
kf = külföldi), a mű leírása, valamint a kiadott példányszám. Soron belül a felsorolt adatokat
pontosvessző választja el egymástól. Az állomány legföljebb 500 soros, egy sorban sem
szerepel 150-nél több karakter. Példaként néhány sor az állományból:
2020;1;ma;Benedek Elek: Benedek Elek legszebb mesekönyve;10000
2021;1;ma;Ablak - Zsiráf (Mérei Ferenc - V. Binét Ágnes);10000
2021;2;kf;Miler,Zdenek: Nagy csúszkálás a kisvakonddal;10000
2022;4;kf;Potter, Beatrix: Nyúl Péter adventi kalendáriuma;10240
A pontosvessző csak elválasztóként szerepel az állományban, a szövegekben nem fordul elő.
A legtöbb esetben a mű leírásában a szerző vagy szerzők neve után kettőspont és szóköz áll,
ezeket a mű címe követi. Vannak olyan esetek is, amikor a cím van elöl, és a szerzők a cím után
szerepelnek zárójelben. A magyar szerzők vezetéknév, szóköz, utónevek formában jelennek
meg, például Benedek Elek. A legtöbb külföldi szerző esetében a vezetéknév, vessző, utónevek
a forma, például Potter, Beatrix.
A könyvek leírásában szereplő szerzők neve nem fordul elő más szerzők által írt könyvek
leírásában, így a „Benedek Elek” szövegrészletet keresve a leírásokban biztosan a magyar
szerzőtől származó könyveket találunk. A könyv leírása egyértelműen azonosít egy könyvet.
A források között rendelkezésre áll a kiadas.txt és a kiadas2.txt állomány.
A kiadas.txt ékezetes betűket, a kiadas2.txt ékezet nélkülieket tartalmaz, de minden
más tekintetben megegyeznek. Mindkét állomány UTF-8 kódolású, azokban legfeljebb
500 adatsor szerepel. Az állományok a kiadás éve, azon belül a negyedév szerint rendezettek.
Készítsen programot, amely az egyik mellékelt állományt felhasználva megoldja az alábbi
feladatokat! A program forráskódját mentse konyvek néven! A program megírásakor
a felhasználó által megadott adatok helyességét, érvényességét nem kell ellenőriznie,
feltételezheti, hogy a rendelkezésre álló adatok a leírtaknak megfelelnek.
A képernyőre írást igénylő részfeladatok eredményének megjelenítése előtt írja a képernyőre
a feladat sorszámát (például: 4. feladat:)! Ha a felhasználótól kér be adatot, jelenítse meg
a képernyőn, hogy milyen értéket vár! Ha a felhasználó számára eredményt jelenít meg
a képernyőn, akkor adja meg, hogy mit írt ki! Az ékezetmentes kiírás is elfogadott.
Részfeladatok
1. Olvassa be a kiadas.txt vagy a kiadas2.txt bemeneti állományt, és tárolja el annak tartalmát a memóriában úgy, hogy azokat a későbbi feladatok megoldása során használni tudja!
2. Kérje be a felhasználótól egy szerző nevét, majd adja meg, hány alkalommal adtak ki a szerzőtől művet az adatok szerint! Amennyiben a szerző neve nem szerepel az adatok között, úgy a „Nem adtak ki” szöveget jelenítse meg!
3. Határozza meg és írja ki, hogy mennyi volt a legnagyobb kiadott példányszám, és ez hány könyv kiadása esetén fordult elő!
4. Határozza meg, hogy melyik volt az első olyan külföldi szerzőtől származó mű, amely legalább 40 000 példányban jelent meg! Tudjuk, hogy volt ilyen könyv. Írja ki a kiadás évét és negyedévét, valamint a mű leírását a mintának megfelelő formátumban: az évszám után perjel következzen, a negyedév után pont álljon!
5. Készítsen statisztikát az olyan évekről, amelyekben szerepel, hogy hány alkalommal és összesen mekkora példányszámban adtak ki magyar, illetve külföldi könyvet!
a) Az eredményeket a mintához hasonlóan táblázatos formában jelenítse meg a képernyőn: az első sorban a táblázat fejléce, a többi sorban az adatok következzenek, soron belül tabulátorokkal elválasztva, a mintának megfelelően!
b) Írja az eredményeket egy tabla.html szöveges állományba, amely egy HTML-táblázatban helyesen tartalmazza a fejlécet és az eredménysorokat! A kimeneti állományba csak a táblázat kódját írja a program, más HTML-elemet ne!
6. Szeretnénk tudni, hogy melyek voltak azok a könyvek, amelyeket az első kiadás után még legalább kétszer, az első kiadásnál nagyobb példányszámban adtak ki újra. Keresse meg a megfelelő könyveket, és mindegyiket külön sorban jelenítse meg!