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. Egy -es () tábla cellái üres vagy színes négyzetek. A táblát függőlegesre állítva a színes négyzetek a legalacsonyabb üres helyet foglalják el, azaz a gravitáció miatt egymásra csúsznak. Háromféle: piros, kék és zöld színű négyzet lehetséges, amelyeket P, K és Z betűk jelölnek, az üres cellát a . karakter. A táblát szegély veszi körbe, ami megakadályozza, hogy a színes négyzetek kiessenek. A táblát balra, jobbra, illetve függőlegesen át lehet forgatni. A forgatás hatására a színes négyzetek újra a legalacsonyabb szabad cellába csúsznak.
A tábla egyik oldalán egy nyílás van, amely induláskor a tábla legalsó sorának -adik () oszlopába esik. Ezen keresztül a felette lévő színes négyzetek kicsúsznak, azaz a táblából törlődnek. esetén:
A tábla forgatását egy utasítássor adja meg. Az utasítássor B, J és F betűkből áll. A B a balra, a J jobbra és az F a függőleges átforgatást írja le. Készítsünk programot i343 néven, amely a tábla forgatását leíró utasítássort végrehajtja. A program első parancssori argumentuma a táblát és az utasítássort leíró adatállomány neve legyen. A fájl első sorában () a tábla méretét és () a nyílás helyét adja meg. Az ezt követő sor a tábla indulás előtti cellánkénti tartalmát adja meg, majd a rákövetkező sorban a forgatásokat leíró utasítássor () következik. A parancssor második argumentumaként megadott kimeneti állomány első három sorába az utasítássor végrehajtása utáni színes négyzetek számát írjuk. Az ezt követő sorba a tábla forgatások utáni állapotát adjuk meg cellánként.
Beküldendő a program forráskódja (i343.pas, i343.cpp, ) és rövid dokumentációja (i343.txt, i343.pdf, ), amely tartalmazza a megoldás rövid leírását, és megadja, hogy a forrásállomány melyik fejlesztő környezetben fordítható. |