Az I. 396. feladat (2016. február) |
I. 396. A Scratch programozási nyelv és fejlesztői környezet segítségével nagyon könnyen szórakoztató játékokat készíthetünk. A rendszer alapismereteinek elsajátítása és felfedezése önmagában is érdekes, ugyanakkor a mások által készített programokkal is játszhatunk. Megnézhetjük belülről őket, vagyis tanulhatunk a programokból. Magyar nyelvű Scratch bevezető is elérhető a http://scratch.inf.elte.hu/ oldalon. A Scratch nemzetközi oldalán, a http://scratch.mit.edu webhelyen, regisztráció után mi magunk is készíthetünk és megoszthatunk programokat. A programozási nyelvben a vizuális elemek kezelése mellett, az egyes objektumok üzeneteket is tudnak küldeni egymásnak, illetve az objektumoktól függetlenül változók és listák kezelése is lehetséges.
Készítsük el a jól ismert kígyós játék egy változatát az alábbiak figyelembe vételével. A kígyó folyamatosan mozogjon vízszintesen vagy függőlegesen, feje a balra és jobbra nyilakkal forduljon az aktuális irányhoz képest \(\displaystyle 90^\circ\)-kal, a testének egyes szelvényei kövessék a fejet. A kígyó kezdetben a fejjel együtt öt testrészből álljon. A pályán induláskor véletlenszerű helyen és irányban jelenjen meg, és mozogjon öt ennivaló, amelyeket a kígyó a fejével meg tud enni. A kígyó hossza 10 másodpercenként eggyel csökkenjen, míg három ennivaló elfogyasztása után eggyel nőjön. Amikor a kígyó elfogyaszt egy ennivalót, akkor egy másik jelenjen meg valahol, tehát öt ennivaló mindig legyen a pályán. Ha a kígyó önmagába harap, vagy nekimegy a falnak, akkor a játék véget ér. Ha a kígyó 25 testrész hosszúságú lesz, akkor győzelemmel fejeződjön be a játék.
Beküldendő egy i396.txt állományban a megoldás rövid dokumentációja, amely tartalmazza a megosztott játék internetes elérhetőségét.
(10 pont)
A beküldési határidő 2016. március 10-én LEJÁRT.
Mintamegoldásként Szakali Benedek, 10. évfolyamos, Kecskeméti diák munkáját közöljük:
A játékban a kígyó testét a kígyó fejének másolásával állítottam elő. A kígyó hosszát a másolatok élettartamának hosszával szabályoztam. A kígyó önmagát akkor érzékeli, ha feketére ér. Minden étel külön szereplő, mozgásuk irányát és helyét is véletlen számokkal generáltam. Az ételek visszapattannak a falról. Ha a kígyó megeszi az ételt, azt az étel érzékeli, és egy üzenettel értesíti erről a kígyót.
A játék linkje: https://scratch.mit.edu/projects/100875404/
Statisztika:
1 dolgozat érkezett. 10 pontot kapott: Szakali Benedek.
A KöMaL 2016. februári informatika feladatai