A 12/2013. (III. 29. NFM rendelet szakmai és vizsgakövetelménye alapján. Szakképesítés, azonosítószáma és megnevezése 54 481 06 Informatikai rendszerüzemeltető Tájékoztató A vizsgázó az első lapra írja fel a nevét! Ha a vizsgafeladat kolgozásához több lapot használ fel, a nevét valamennyi lapon fel kell tüntetnie, és a lapokat sorszámmal el kell látnia. Használható segédeszköz: - Értékelési skála: 81 100 pont 5 (jeles 71 80 pont 4 (jó 61 70 pont 3 (közepes 51 60 pont 2 (elégséges 0 50 pont 1 (elégtelen A javítási-értékelési útmutatótól eltérő helyes megoldásokat is el kell fogadni. A vizsgafeladat értékelési súlyaránya: 10%. T 1/5
1. feladat Programozás Összesen: 60 pont Európa legmagasabb épületei A következő feladatban Európa legmagasabb épületeinek adataival kell dolgoznia. A megoldás során vegye figyelembe a következőket: 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:3. feladat:! Az egyes feladatokban a kiírásokat a minta szerint készítse el! Az ékezetmentes kiírás is elfogadott. A program megírásakor a fájlban lévő adatok helyes szerkezetét nem kell ellenőriznie, feltételezheti, hogy a rendelkezésre álló adatok a leírtaknak megfelelnek. Megoldását úgy készítse el, hogy az azonos szerkezetű, de tetszőleges bemeneti adatok mellett is helyes eredményt adjon! 1. A feladat megoldásához hozzon létre grafikus vagy konzolalkalmazást (projektet Legmagasabb azonosítóval! 2. Az UTF-8 kódolású legmagasabb.txt állomány Európa legmagasabb épületeinek adatait tartalmazza a következő minta szerint (forrás: wikipedia.org: név;város;ország;magasság;emelet;épült Avaz Twist Tower;Szarajevó;Bosznia-Hercegovina;172;40;2007 Avenue, 77 block 1;Moszkva;Oroszország;155;43;2008 Broadgate Tower;London;Anglia;164,3;35;2007 Centrum LIM;Varsó;Lengyelország;140;43;1989 Az épület nevét, városát és országát az épület magassága (m, valós szám, az emeletek száma és az épület építésének éve követi. Az adatokat pontosvessző választja el. Olvassa be a legmagasabb.txt állományban lévő adatokat és tárolja el egy olyan adatszerkezetben, amely a további feladatok megoldására alkalmas! A fájlban legfeljebb 1000 sor lehet. Ügyeljen arra, hogy az állomány első sora az adatok fejlécét tartalmazza! 3. Határozza meg és írja ki a képernyőre a minta szerint, hogy hány épület található az állományban! 4. Határozza meg és írja ki a képernyőre a minta szerint az állományban található épületek emeleteinek összegét! 5. Határozza meg és írja ki a képernyőre a minta szerint a legmagasabb épület adatait! Feltételezheti, hogy nem alakult ki holtverseny. 6. Döntse el, hogy az adatok között található-e olasz épület! Keresését ne folytassa, ha a választ meg tudja adni! A képernyőre írást a minta szerint végezze! 7. Határozza meg és írja ki a képernyőre a minta szerint azoknak az épületeknek a számát, amelyek 666 lábnál magasabbak! Az átváltáshoz az 1 m = 3,280839895 láb értékkel dolgozzon! 8. Készítsen statisztikát országok szerint az épületek számáról! A képernyőre írást a minta szerint végezze! 9. A nemet.txt állományba írja ki azoknak a német városoknak a nevét, amelyekben épület található a forrásadatok szerint! Az állományba a városok neve egymás alá kerüljön a minta szerint! Oldja meg, hogy a városnevek ne ismétlődjenek az állományban! T 2/5
Minták: nemet.txt: T 3/5
2. feladat Adatbázis-kezelés Összesen: 40 pont A Rotary nevű adatbázis a III. Rotary Futófesztivál egyéni maraton versenyszámának első 91 befutójáról tartalmaz adatokat 1. Az adatbázis az alábbi táblákat és relációkat tartalmazza: eredmenyek( [Eredmények tábla] : Szöveg [Versenyző rajtszáma, PK] poz : Egész szám [Versenyző helyezése] szul : Szám [Versenyző születésének éve] telepules : Szöveg [Versenyző lakhelye] orszagok_ : Egész szám -> orszagok., FK kategoriak_ : Egész szám -> kategoriak., FK kpoz : Szám [Kategóriánkénti helyezés] nem : Szöveg [Versenyző neme: Férfi/Nő] npoz : Szám [Nemenkénti helyezés] o : Idő [Futás őtartama ó:p:mp] orszagok( onev kategoriak( knev [Országok tábla] : Egész szám [Ország azonosítója, PK] : Szöveg [Ország neve] [Kategóriák tábla] : Egész szám [Kategória azonosítója, PK] : Szöveg [Kategória neve] A lekérdezéseknél a feladatrészekre csak akkor jár pont, ha azok tetszőleges adatok mellett is helyes eredményt adnak. Az elsődleges kulcsokat PK-val, az egenkulcsokat FK-val jelöltük. A kettőspont után az adatmező típusát adtuk meg, az egenkulcsok utáni -> karakterek pedig a kapcsolatokat jelölik. A szögletes zárójelekben a mező leírása található. A feladatok pontosabb megértéséhez tanulmányozza a táblákban lévő rekordokat is! A feladatok megoldására elkészített SQL parancsokat a megoldasok.sql állományba illessze be a feladatok végén zárójelben jelölt sor alá! A javítás során csak ennek az állománynak a tartalmát értékeljük. Ügyeljen arra, hogy a lekérdezésben pontosan a kívánt mezők a megadott névvel szerepeljenek, és felesleges mezőt ne jelenítsen meg! 1. Hozzon létre a lokális SQL szerveren rotary néven adatbázist! Az adatbázis alapértelmezett rendezési sorrendje a magyar szabályok szerinti legyen! Ha az Ön által választott SQL szervernél nem alapértelmezés az UTF-8 kódolás, akkor azt is állítsa be alapértelmezettnek az adatbázis létrehozásánál! (1. feladat: 2. A tablak.sql és az adatok.sql állományok tartalmazzák a táblákat létrehozó és az adatokat a táblába beszúró SQL parancsokat. Futtassa elsőként a tablak.sql, majd az adatok.sql parancsfájlt a rotary adatbázisban! 1 Forrás: http://www.rotaryfelmaraton.hu/eredmenyek/maraton_egyeni-vsze1.html T 4/5
3. Állítsa be a következő ábra szerint és a fenti leírás alapján az egenkulcsokat az eredmenyek táblában! (3. feladat: 4. Vegyen fel új, logikai típusú mezőt eu azonosítóval az orszagok táblában, ahol azt tárolhatjuk, hogy a versenyző országa az Európai Unió tagja! (4. feladat: 5. Készítsen lekérdezést, amely megjeleníti a versenyszámban befutó, nem budapesti női futók helyezését, rajtszámát és lakhelyét! A lista legyen a versenyzők rajtszáma szerint növekvő rendben! (5. feladat: 6. Lekérdezéssel listázza ki az eredmenyek tábla összes mezőjét, még akkor is, ha később bővül a tábla új mezővel! Csak azok a rekordok jelenjenek meg, ahol a telepules mező kitöltött, és az ország neve ia karakterekre végződik! (6. feladat: 7. Készítsen összesítést, hogy országonként hány versenyző futott be az első 80 helyen! Az eredmény elsődlegesen a versenyzők száma, másodlagosan az országok neve alapján legyen rendezett! Az oszlopok sorendje és a mezőfeliratok a minta szerintiek legyenek! (7. feladat: 8. Lekérdezés jelenítse meg a minta szerint a három legősebb, "51-60 év között" korcsoportba tartozó versenyző rajtszámát és korát! A versenyző korát a mindenkori aktuális év és a szul mező különbségével számolja! (8. feladat: A fenti minta eltérhet a helyes megoldás eredményétől. T 5/5