Professional Documents
Culture Documents
SICI-3011
Preparado por:
Prof. Nelliud D. Torres
Instrucciones de Karel
Las intrucciones de Karel se pueden dividir en los siguientes
tpicos:
a) Vocabulario bsico
b) Vocabulario extendido
c) Instrucciones condicionales
d) Instrucciones de repeticin
Vocabulario Bsico
move - Karel puede moverse un paso hacia el frente. Si hay una
pared, choca y el programa aborta.
turnleft - Karel vira 90 grados hacia la izquierda. Tiene el mismo
problema de Otto con la diferencia de que es zurdo.
pickbeeper - Karel recoje un beeper y lo coloca en su bolsa. Tiene
que haber un beeper la lado de el. De no ser as, el
programa aborta.
putbeeper - Karel saca un beeper de su bolsa y lo pone en el piso.
De nuevo, si no hay beeper en la bolsa, el programa
aborta y Karel detiene su ejecucin.
VOCABULARIO EXTENDIDO
Podemos inventarnos instrucciones en Karel. Por ejemplo para
crear un comando que haga que Karel vire a la derecha, podemos
escribir las siguientes intrucciones antes del begin.
turnright
turnleft
turnleft
turnlef
end
Requiere un end al
final.
INSTRUCCIONES CONDICIONALES
Karel posee una instruccin llamada if que le permite saber el status
de ciertas condiciones. Con eso podemos especificarle que haga una
cosa o la otra. El formato del if es el siguiente:
if predicate
<then-instrucciones
end
if predicate
<then-instrucciones>
else
<else-clause statement(s)>
end
Condiciones (Predicate)
front_is_clear
not front_is_clear
left_is_clear
not left_is_clear
right_is_clear
not right_is_clear
facing_north
not facing_north
facing_south
not facing_south
facing_east
not facing_east
facing_west
not facing_west
next_to_a_beeper
not next_to_a_beeper
any_beepers_in_beeper_bag
not beepers_in_beeper_bag
INSTRUCCIONES DE REPETICIN
iterate
Tiene el siguiente formato:
iterate iteration-amount
<loop body statement(s)>
end
Ejemplo:
iterate 4
move
end
Es similar a:
move
move
move
move
while
Tiene el siguiente
formato:
while predicate
<loop body statement(s)>
end
Ejemplo:
while next_to_a_beeper
pickbeeper
move
end
Mientras Karel este parado al lado de
un beeper, lo va a recoger y va a dar
un paso adelante. Note que no coteja
si al frente hay una pared o no.
EL MUNDO DE KAREL
Permite
rotar la
direccin a
la que Karel
est mirando
Nos permite
editar el mapa.
Poner paredes,
los beepers y a
Karel.