La condicional puede ser verdadera o falsa, si la condicional es verdadera se ejecuta la intrucción.
if (condicional) . {bloque condicional}
instrucción {bloque de instrucciones}
if (frontIsClear || nextToABeeper)
{more();turn left();}
if else
Si la condicional es verdadera se ejecuta la instrucción 1. Si la condicional es falsa se ejecuta la instrucción 2.
if (condicional) {bloque condicional}
instrucción1 {bloque de instrucciones1}
else instrucción 2 {bloque de instrucciones2}
if (frontIsClear)
move();
else turnleft();
while
Esta estructura de repetición le permite al programador especificar las veces que se repita una acción mientras una condición se mantenga verdadera.
while (condicional) {bloque condicional}
intrucción {bloque de instrucciones}
while (frontIsClear)
move();
Otras instrucciones:
frontIsClear: Es posible si no se encuentra ninguna pared enfrente.
frontIsBlocked: Si existe una pared enfrente.
leftIsClear: Si en el lado izquierdo no se encuentra pared alguna.
leftIsBlocked: Si en el lado izquierdo existe pared.
rightIsClear: Si en el lado derecho se encuentra pared alguna.
rightIsBlocked: Si en el lado derecho existe pared.
nextToABeeper: Si existe algún beeper en donde karel esta parado.
NotnextToABeeper: Si no existe beeper donde karel esta parado.
facingNorth: Si karel voltea hacia el norte
NotfacingNorth: Si karel no voltea hacia el norte.
facingSouth: Si karel voltea hacia el sur.
NotfacingSouth: Si karel no voltea hacia el sur.
facingEast: Si karel voltea hacia el este.NotfacingEast: Si karel no voltea hacia el este.
facingWest: Si karel voltea hacia el oeste.
NotfacingWest: Si karel no voltea hacia el oeste.
anyBeepersInBeeperBag: Si existe algún beeper en beeper bag.noBeepersInBeeperBag: Si no existe ningún beeper en beeper bag.

