Téma ismertetése
- Döntő eredmények
- 1. forduló
1. forduló
- Az első fordulóban egy online tesztet kell kitöltened.
- A teszt kitöltésére fordítható idő nincs korlátozva, de a tesztet 2017. november 30. 15 és 21 óra között ki kell töltened.
- A tesztkérdések között nem tudsz visszalépni. Amíg egy kérdést nem válaszoltál meg, ne lépj tovább a következő kérdésre.
- A teszt kitöltése megszakítható, majd később az aktuális kérdésnél folytatható. Ilyenkor nem szabad leadni a tesztet, mert akkor nem tudod folytatni a kitöltést.
Jó munkát kívánunk!
- Az első fordulóban egy online tesztet kell kitöltened.
- 2. forduló
2. forduló
Olvass be egy tízes számrendszerbeli számot.
Írd ki, hogy a szám kettes számrendszerbeli alakjában hány egyest tartalmaz a leghosszabb egyesekből álló sorozat.
Bontsd fel a 376825751 számot két prímszám szorzatára!
Olvasd be a billentyűzetről egy táblázat sorainak és oszlopainak számát.
A megadott karakterekből rajzolj egy táblázatot a tablazat.txt fájlba úgy, hogy 3 karakter férjen függőlegesen és vízszintesen a táblázat celláiba. A cellák közepére kerüljön egy 0 és 9 közötti véletlen szám.
A karakterek kódjaikkal:
179: │
195: ├
196: ─
180: ┤
194: ┬
193: ┴
197: ┼
218: ┌
191: ┐
192: └
217: ┘
A viszonyok.txt fájl tartalmazza, hogy ki kinek a főnöke. A fájl minden sora egyetlen függőséget tartalmaz. A fájlban nem rendes nevek szerepelnek, hanem kódok.
Kati->Feri jelentése: Kati közvetlen főnöke Ferinek
Egy főnöknek lehet több beosztottja, de egy beosztottnak csak egy közvetlen főnöke lehet.
A következő feladatokat kell megoldani:
- Kiknek nincsen főnöke?
- Kiknek nincsen beosztottja?
- Hány tagú a leghosszabb függőségi lánc?
- Jelenítsd meg a leghosszabb függőségi láncot vagy láncokat a képernyőn!
- Döntő
Döntő
Tornászbajnokságot tartanak. A csarnokhoz csatlakozóan van egy hosszú, szűk folyosó, melynek közepénél szembe találkozik a svéd és a magyar tornász válogatott négy-négy tagja. Egymás mellett nem férnek el, kénytelenek valami más megoldást kitalálni. Arra jutottak, hogy átugrálnak egymás feje felett, de magyar csak svédet, svéd csak magyart ugorhat át. Bárki átléphet egy szomszédos üres mezőre.
A játék egy 9 egymás melletti mezőből álló táblán játszódik, H-val jelöltük a magyar csapat tagjait, akik a bal oldali 4 mezőt foglalják el. S-el jelöljük a svédeket, akik jobbról helyezkednek el:
HHHH_SSSS
A megengedett mozgások:
- Bármely tornász átléphet az üres helyre, ha az közvetlenül mellette van (bármely irányba).
- H átugorhatja S-t, ha S túloldalán üres hely van (bármely irányba), és az üres hely a H-hoz képest a második mezőn van.
- S átugorhatja H-t, ha H túloldalán üres hely van (bármely irányba), és az üres hely az S-hez képest a második mezőn van.
A cél az, hogy minél kevesebb lépésből kicseréljük a két válogatott tagjait!
A csapatoknak viszont nem kell felváltva lépniük!
A felhasználó úgy vezérli a programot, hogy megadja a kiindulási mező indexét (0-8), majd a célmező indexét (0-8).
Írd meg úgy a programot, hogy ha akár a kiindulási mező, akár a célmező megadásánál -1-et adunk meg, akkor a program minden további képernyőre írás nélkül kilép.
A bekért mezőszámokat ellenőrizni kell: előbb bekérjük a két mezőszámot, majd ellenőrizzük. Ha helytelen a lépés, akkor kiírjuk, hogy "Érvénytelen lépés!", majd újra bekérjük mind a kettőt.
A feladat megoldása során pontszám jár a programozási módszertanra, legtöbb pontot helyesen használt objektumorientált módszertannal lehet elérni, de csökkentett pontszámot lehet kapni a strukturált vagy akár a moduláris módszertan használatára is.
Program készítés során figyelj a könnyen áttekinthető és kommentekkel ellátott kódolásra!
Egészítsd ki a programot egy automata funkcióval. Ha a felhasználó a kiindulási mező indexe helyett egy „a” karakter ír be (auto), akkor a gép automatikusan hozza létre a következő lépést (a gép csak helyes lépést generáljon), a kiírás során minden ugyanúgy jelenjen meg, mint manuális módban, csak a választott mező előtt egy „a” betű is jelenjen meg.
Az automata üzemmód lehetőleg úgy működjön, hogy ha minden lépésnél csak az automata üzemmódot használom, akkor a program nem kerül végtelen ciklusba, előbb utóbb megoldásra jut.
A program induláskor írjon ki egy használati utasítást. Ennek megfogalmazása a versenyző feladata. Legyen egyértelmű, lényegre törő.
A program futásának egy részlete:
Lépésszám: 0 ------------------ |H|H|H|H| |S|S|S|S| ------------------ Melyik mezővel lépsz? (0-8) 5 Melyik mezőre lépsz? (0-8) 4 Lépésszám: 1 ------------------ |H|H|H|H|S| |S|S|S| ------------------ Melyik mezővel lépsz? (0-8) 0 Melyik mezőre lépsz? (0-8) 12 Érvénytelen lépés! Melyik mezővel lépsz? (0-8) 6 Melyik mezőre lépsz? (0-8) 5 Lépésszám: 2 ------------------ |H|H|H|H|S|S| |S|S| ------------------
...
Lépésszám: 28 ------------------ |S|S|S|S|H| |H|H|H| ------------------ Melyik mezővel lépsz? (0-8) 4 Melyik mezőre lépsz? (0-8) 5 Lépésszám: 29 ------------------ |S|S|S|S| |H|H|H|H| ------------------ Gratulálok, vége a játéknak!Kilépéskor:
Lépésszám: 0 ------------------ |H|H|H|H| |S|S|S|S| ------------------ Melyik mezővel lépsz? (0-8) 4 Melyik mezőre lépsz? (0-8) -1
vagy
Lépésszám: 0 ------------------ |H|H|H|H| |S|S|S|S| ------------------ Melyik mezővel lépsz? (0-8) -1