2. Skúška z programovania pre 1i, 1MI a 1FI |
1. | Naprogramujte hru KARTIČKY:
Na hracej ploche sú rozmiestnené dvojice kartičiek odlišujúcich sa farbou a obrázkom (znakom). Kartičky sa môžu prekrývať. Úlohou hráča je zozbierať dvojice rovnakých kartičiek a vyprázdniť tým hraciu plochu. Kartičky sú zobrazené ako farebné obdĺžniky výšky 2*VYS riadkov a šírky 2*SIR stĺpcov obrazovky. Sú orámikované znakom #176 a vnútro je vyplnené príslušným znakom charakterizujúcim kartičku. Parametre kartičiek načítajte zo súboru karticky.txt, ktorý má nasledovnú štruktúru:
Po vyprázdnení hracej plochy program pogratuluje hráčovi. Kartičky v programe reprezentujte objektami. Definujte
metódy na inicializáciu, vykreslenie do video-pamäti, na zistenie, či sa
na ňu kliklo (resp. prekrývanie s inou kartičkou).
|
2. | Napíšte program, ktorý zobrazí na obrazovke
n korytnačiek (n<11) s rôznymi obrysmi a umožní s nimi interaktívne
pracovať pomocou myši. Korytnačky možno ťahať so stlačeným ľavým tlačidlom
a pravým tlačidlom otáčať smerom k myši. Vždy, keď sa korytnačka ťahaním
položí na nové miesto, zanechá na tomto mieste otlačok svojho obrysu.
Obrysy korytnačiek sú zadané v súbore tvary.txt ako postupnosť čísel (strieda sa otočenie vpravo a presun dopredu). V každom riadku tohto súboru je definovaný obrys pre jednu korytnačku. Program na začiatku vygeneruje príslušný počet korytnačiek (podľa počtu riadkov v súbore) na náhodných pozíciách otočené na sever. Každá korytnačka dostáva príslušný tvar. Poznámka 1: Nakoľko metóda Blizko rozpoznáva len malé okolie okolo momentálnej pozície korytnačky a samotné tvary môžu byť veľké, myš bude reagovať len pri kliknutí v blízkosti pozície korytnačky (tvary sú v súbore zadané tak, aby bolo jasné, kde je táto pozícia) Poznámka 2: Obrys korytnačky, ktorý sa má otlačiť po ťahaní, vykresľuje pomocná korytnačka - táto je skrytá, najprv sa nastaví na pozíciu korytnačky, nastaví si jej smer a zinterpretuje jej obrys (ten zrejme musí byť niekde uložený, aby bol prístupný pre túto pomocnú korytnačku). |