Coneix en Karel
El món de Karel
En Karel és una medusa programable que viu dins d'una graella: una quadrícula de caselles, com un tauler d'escacs submarí. En Karel ocupa sempre una sola casella i sempre mira en una de quatre direccions:
Nord (amunt), Sud (avall), Est (dreta) o Oest (esquerra).
La teva tasca és escriure instruccions. En Karel les llegirà de dalt a baix i les executarà una per una, quan premis ▶ Executa.
La primera ordre: move()
move() fa avançar en Karel una casella en la direcció que mira. Si davant seu hi ha un límit que impedeix avançar, el programa s'atura i mostra un error.
move().
Atenció: En aquests exemples, no pots modificar el codi. Prem ▶ Executa i observa com funciona:
En Karel ha avançat tres caselles cap a la dreta, perquè mirava cap a l'Est i tenia tres ordres move(). Si hagués trobat un impediment per avançar, el programa hauria retornat un error.
Girar a l'esquerra: turn_left()
turn_left() fa que en Karel giri 90° en sentit antihorari (cap a l'esquerra). Girar no és avançar: en Karel canvia de direcció però no es mou de casella.
Observa l'exemple: Karel està mirant cap a l'Est (dreta). Quan faci un gir a l'esquerra, mirarà cap al Nord (amunt).
Fem que Karel avanci dues caselles; després, li diem que giri a l'esquerra i, finalment, que avanci dues caselles més.
Girar a la dreta: turn_right()
turn_right() indica a Karel que ha de girar 90° en sentit horari (cap a la dreta). El seu funcionament és molt similar a turn_left().
En l'exemple següent, en Karel comença a l'extrem superior esquerre, i mirant cap a l'Est. Avança dues caselles i gira a la dreta (per tant, mirarà al Sud). Finalment, avança dues caselles més:
Fins ara coneixes les tres instruccions bàsiques de moviment:
move()— avança una casella en la direcció i sentit actual.turn_left()— gira 90° cap a l'esquerra (sentit antihorari).turn_right()— gira 90° cap a la dreta (sentit horari).
Amb aquestes tres instruccions, pots portar en Karel a qualsevol casella del seu món.