Coneix en Karel
El món d'en Karel
En Karel és una medusa programable que viu dins d'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à i les executarà, una per una, de dalt a baix.
La primera ordre: move()
move() fa avançar en Karel una casella en la direcció i sentit on mira. Si davant seu hi ha un límit que impedeix avançar, el programa s'atura i mostra un error.
move().
Prem ▶ Executa i observa com funciona. Pots modificar la velocitat d'execució amb el lliscador:
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: en Karel està mirant cap a l'Est (dreta). Quan faci un gir a l'esquerra, mirarà cap al Nord (amunt).
Fem que en 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 en 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:
Has après 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).
Exercici
En Karel és a l'extrem inferior esquerre del seu món i està mirant cap a l'Est. Hi ha una perla a l'extrem oposat.
Escriu el codi per portar en Karel a la casella on és la perla.
Important: Recorda que has d'escriure move(), és a dir, amb parèntesis, tal i com acabes de llegir. Si oblides els parèntesis, comets un error de sintaxi.
Final del capítol
Has arribat al final del capítol. Pots passar al següent si cliques al botó que veuràs a continuació, a sota.