Holan - zápočtový test (6.1.2025)
Robot stojí v počátku souřadné soustavy (souřadnice [0,0,0]) a je otočen tak, že doprava vede osa x, nahoru osa y a ve směru pohledu (dopředu) osa z (směr [0,0,1]).
Příkazy robota jsou zadávány písmeny:
posun:
F...vpřed, posune se o krok délky 1 ve směru své orientace
otočení (otáčí se na místě, vždy o 90 stupňů):
podle "svislé" osy (od hlavy k nohám): L...doleva R...doprava podle jedné "vodorovné" osy (rozpřažené ruce): U...nahoru D...dolů podle druhé "vodorovné" osy (pohled kupředu a směr pohybu): <...na levý bok >...na pravý bok
Osy, podle kterých se robot otáčí, jsou vždy relativní k robotovi, tedy pokud se třeba otočí dolů (D), následující otočení doleva (L) se bude provádět vzhledem k nové ose hlava-nohy, která je nyní vodorovná, orientovaná ve směru dřívějšího směru pohybu, robot tedy po příkazech D L bude ležet na zemi, na pravém boku, hlavou ve směru původního směru pohybu.
Program čte ze vstupu znaky representující příkazy a po každém z nich vytiskne na zvláštní řádek trojici celých čísel, oddělených mezerou, udávající aktuální polohu robota. Vstup je ukončen tečkou ('.').
Příklad:
Vstup:
FFLFRF<FRFUFF.
Výstup:
0 0 1 0 0 2 0 0 2 -1 0 2 -1 0 2 -1 0 3 -1 0 3 -1 0 4 -1 0 4 -1 1 4 -1 1 4 -2 1 4 -3 1 4