A szöveg csak Firefox böngészőben jelenik meg helyesen. Használja a fenti PDF file-ra mutató link-et a letöltésre. Valószínűleg sokan ismerik az általános vagy középiskolából a Logo nyelvet, amelyben érdekes és izgalmas ábrákat készíthetünk egy teknőc irányításával. Az Imagine Logo programozási környezetet minden tanuló és tanár számára szabadon használható és letölthető a http://logo.sulinet.hu oldalról. A feladatunk az lesz, hogy tanítsuk meg a teknőcöt labirintust rajzolni, illetve kitalálni egy labirintusból. Először rajzoljunk egy véletlen labirintust, melynek minden járata és minden fala 11 egység széles, tehát alapelemként méretű fehér (járat) vagy fekete (fal) négyzetekből áll. A labirintust létrehozó labkész :n :m eljárás két paramétere a labirintus négyzeteinek vízszintes és függőleges száma (két páratlan pozitív egész). A labirintus közepe a rajzlap közepére kerüljön, és egy kijáratot tartalmazzon a bal felső sarok alatti négyzet helyén. A teknőc érzékeli a lapon az adott helye alatti pont színét. Másodszor ennek felhasználásával készítsünk egy elhelyez :n :m eljárást, amely véletlenszerűen elhelyezi a teknőcöt a labirintusba egy járat négyzet közepére úgy, hogy észak felé nézzen, és egy kitalál :n :m eljárást, amely megpróbálja kivezetni a teknőcöt a labirintusból. A teknőc húzzon egy 5 egység vastag színes vonalat, amely mutatja, hogy mely járatokon haladt keresztül, de a négyzeteken belüli apró mozgásoknál a teknőc ne húzzon vonalat. Az eljárás érjen véget, ha a teknőc kiért a labirintusból. A kivezető algoritmus nagyon egyszerű is lehet, tehát nem követelmény, hogy a teknőc minden labirintusból kijusson. A körjáratot nem tartalmazó labirintusokból pl. ki lehet jutni úgy, hogy olyan módon mozgunk, hogy közben tőlünk jobbra mindig fal van. A megoldás során csak a teknőcgrafikát és a Logo nyelv funkcionális részét használjuk. Ne alkalmazzunk változókat, csak rekurzió segítségével valósítsunk meg ismétlést. Igyekezzünk minél több önállóan is értelmes függvényre és eljárásra bontani a megoldást, pl. négyzet rajzolása, annak megállapítása, hogy van-e fal előttem stb. Beküldendő egy i285.zip tömörített állományban a megoldást tartalmazó i285.imp Imagine Logo Project és egy i285.txt szöveges állomány, amely ismerteti a megoldás során készített egyes eljárásokat és függvényeket. |