Van egy programozható motorcsónakunk. A jármű kétféle parancsra hallgat: a B hatására balra, a J hatására pedig jobbra fordul 90 fokot. A tavon a nyilat (🡅) tartalmazó mezőről indul a nyíl által meghatározott irányba. Folyamatosan halad előre, és az irányán csak bójához érkezéskor módosít. Teli bójánál (⚫) beolvas egy parancsot, és az annak megfelelő irányba fordul. Csillagos bójánál (✪) azonban a legutóbb végrehajtott parancsot hajtja végre újra. A csónak csak akkor áll meg, ha teli bójához érkezett, és elfogytak a parancsok. Ha a tópartnak ütközik, akkor azonnal elsüllyed, amit természetesen nem szeretnénk.
A tavat alkotó mezőkre az oszlopok feletti betűkkel és a sorok melletti számokkal tudunk hivatkozni.
Lássunk egy példát!
A csónak a B5-ös mezőről indul a nyíl irányába, és a JB kódot adtuk meg neki. Folyamatosan halad a B3-as mezőig, ahol beolvassa az első parancsot, és annak megfelelően jobbra fordul. A D3-as mezőhöz ér, ahol beolvassa a második parancsot, és annak megfelelően balra fordul. Így a D1-es mezőhöz jut, ahol ismét balra fordul (mert az volt a legutóbb végrehajtott parancs). Az A1-es mezőn pedig megáll, mert nincsen több parancs. |
A feladatok az alábbi pályára vonatkoznak.
Melyik mezőn áll meg a csónak a megadott kódok hatására?
Van egy teli bójánk (⚫). Melyik üres mezőre kell tenni ahhoz, hogy a JB kód hatására a csónak a megadott célmezőn álljon meg? (A nyilat tartalmazó mezőre nem tehető bója.)
|