Feladat
Az alap feladat
Egy személyi adatokat tartalmazó „adatbázis” feldolgozása a feladat.
A fájl adatait mindenekelőtt –ellenőrzésképpen– izlésesen kiírjuk a képernyőre!
Az „izlésesen” ezt jelenti:
vezetéknév(20) | keresztnév(20) | sz.sz.(11)
Például:
Neumann |János |10312281234
Megjegyzés: a mezőtartalom mögötti szám a mező hosszát jelöli (karakterekben); „sz.sz.”=„személyi szám”.
A bemeneti fájl egy elemének típusa
Típus
TSzemély=Rekord(
vnév,knév:Szöveg (20) [legfeljebb 20 jelből álló szöveg]
szsz:Szöveg (11) [személyi szám: pontosan 11 jelből álló szöveg]
)
Megjegyzés: Pascalban a Szöveg (h) -nak a String [h] felel meg.
A „lényegi” feladatok
Készítsen izléses, lapozott listát a tárolt adatokról, a képernyőre!
Lapozott : egy lapra legfeljebb 20 sort írjon ki! Az utolsó lap állhat csak 20-nál kevesebb sorból!
Egy adott lap kiírásakor billentyűre várjon a program!
Izléses : minden lapon az első sora fejléc legyen, az alábbi szöveggel és hosszakkal:
# | Vezetéknév | Keresztnév | Év |Hó |Nap |Nem
4 | 20 | 20 | 4 |2 | 3 | 3
Például:
# | Vezetéknév | Keresztnév | Év |Hó |Nap |Nem
1 |Neumann |János |1903 |12 |28 |Ffi
... |... |... |... |.. |... |...
19 |Roberts |Julia |1967 |10 |28 |Nő
Képernyőterv:
Van-e a fájlban olyan személy, akinek a születésnap ját a mai nap (2015.03.02.) 8 napos környezetében ünnepelhetnénk?
(Segítségként súgok: a kiinduló algoritmust megtalálja a vonatkozó előadás 18. diáján.
Figyelje meg az itt alkalmazott ún. előreolvasási techniká t „működés” közben.)
Válogassa szét egy-egy fájlba a hölgyek et és az urak at!
(Segítségként súgok: a kiinduló algoritmust megtalálja a vonatkozó előadás 26. diáján.
Határozza meg hányan születtek az egyes hónapokban ! Az eredményt izlésesen írja ki a képernyőre és egy fájlba is!
Természetes elvárás a megvalósítással szemben, hogy
be kell kérni a fájl neve(ke)t, ellenőrizni kell a fájl(ok) létezését
(továbbá megfelelő módon jelezni az esetleges hibát; hiba esetén újra kérni...),
minden részfeladathoz önálló alprogram tartozzon.
A String -kezeléshez ajánlom figyelmében a már ajánlott anyagot: Stringkezelo_fuggvenyek.pdf .
Néhány kész (típusos/karakteres) adatfájl: minta.dat /minta.txt ,
nobel.dat /nobel.txt .