Aquí hay una lista de las condiciones que Karel puede revisar
| Condicion | Descripción |
|---|---|
| frontIsClear | Verdadero si no hay pared enfrente de Karel |
| leftIsClear | Verdadero si no hay pared a la izquierda de Karel |
| rightIsClear | Verdadero si no hay pared a la derecha de Karel |
| frontIsBlocked | Verdadero si sí hay pared enfrente de Karel |
| leftIsBlocked | Verdadero si sí hay pared a la izquierda de Karel |
| rightIsBlocked | Verdadero si sí hay pared a la derecha de Karel |
| nextToABeeper | Verdadero si en la casilla donde Karel está al menos un zumbador |
| notNextToABeeper | Verdadero si en la casilla donde Karel no hay ningún zumbador |
| anyBeepersInBeeperBag | Verdadero si la mochila de Karel tiene uno o más zumbadores |
| noBeepersInBeeperBag | Verdadero si la mochila de Karel tiene cero zumbadores |
| facingNorth | Verdadero si Karel esta orientado al norte (arriba). |
| facingEast | Verdadero si Karel esta orientado al este (derecha). |
| facingSouth | Verdadero si Karel esta orientado al sur (abajo). |
| facingWest | Verdadero si Karel esta orientado al oeste (izquierda). |
| notFacingNorth | Verdadero si Karel esta orientado en cualquier dirección excepto el norte. |
| notFacingEast | Verdadero si Karel esta orientado en cualquier dirección excepto el este. |
| notFacingSouth | Verdadero si Karel esta orientado en cualquier dirección excepto el sur. |
| notFacingWest | Verdadero si Karel esta orientado en cualquier dirección excepto el oeste. |
Otra condición que podemos revisar es: isinfinite, esta recibe un parámetro numérico. La condición se verdadera cuando el valor que recibe es infinito.
Este código solo se avanza si Karel tiene infinitos zumbadores.
if (isinfinite(beepersInBeeperBag))
move();
Otra condición que podemos revisar es: iszero, esta recibe un parámetro. La condición se verdadera cuando el valor que recibe es cero.
La condición de abajo se determinará como cierta, y Karel avanzará un paso.
if (iszero(0))
move();
Una función que solo avanza si recibe 0 de argumento
define funcion (n) {
if (iszero(n))
move();
}
También hay otras condiciones que Karel puede comprobar, cada una tiene las cuales son descritas brevemente a continuación.
Si importas rekarel.globals, puedes usar las condiciones true y false, la primera siempre es verdadera y la segunda siempre falsa.
Lee más acerca de las globales aquí.
Puedes utilizar la comparación "igual que" ==, "menor que" < o "menor igual que" <=
Lee más acerca de las comparaciones aquí.