05_Primeros Pasos En Karel III

Páginas: 12 (2757 palabras) Publicado: 11 de octubre de 2015
Repetir
En Karel, además de las instrucciones básicas, también existe una instrucción que le dice a Karel que ejecute varias veces
una o más instrucciones, y se escribe como a continuación:
PASCAL
repetir veces


JAVA
iterate( )


Por ejemplo, para indicarle a Karel que debe caminar cinco posiciones hacia adelante, debemos escribir:
PASCAL
repetir 5veces
avanza;

JAVA
iterate( 5 )
move();

Para especificar si queremos que más de una instrucción se ejecute varias veces, debemos delimitarlas de la siguiente
manera:
PASCAL
repetir veces inicio

fin;

JAVA
iterate( ) {

}

El código que escribamos entre los delimitadores (palabras en rojo) se ejecutara en orden el número de veces que
especifiquemos.
Por ejemplopara hacer que Karel construya un cuadrado de zumbadores de 5x5 el código sería:
PASCAL
1
iniciar-programa
2
inicia-ejecucion
3
repetir 4 veces inicio
4
repetir 4 veces inicio
5
avanza;
6
deja-zumbador;
7
fin;
8
repetir 3 veces
9
gira-izquierda;
10
fin;
11
apagate;
12
termina-ejecucion
13 finalizar-programa

Escrito por Enrique Lira Vargas

JAVA
1
class program {
2
program() {
3
iterate(4) {
4iterate(4) {
5
move();
6
putbeeper();
7
}
8
iterate(3)
9
turnleft();
10
}
11
turnoff();
12
}
13 }

Como podemos ver, las líneas 3 y 10 delimitan el fragmento de código que se repetirá 4 veces (una por cada lado del
cuadrado). Las líneas 4 y 7 delimitan un fragmento de código que se repetirá cuatro veces, el cual es una secuencia de
avanzar y poner un zumbador. Las líneas 8 y 9 le indican a Karelque debe girar tres veces a la izquierda (girar a la
derecha).
Al ejecutarse, tiene una sentencia de repetición en la línea 3 que nos indica en este caso particular que haremos cuatro
lados. Cada lado se conforma de una sucesión de 4 beepers contiguos, y giramos a Karel para que pueda dibujar el
siguiente lado.
Ejercicio. Ejecuta el código anterior y verifica que en realidad hace un cuadrado de5x5, no olvides poner zumbadores en
la mochila de Karel.
Pregunta de reflexión. ¿Por qué si cada lado solo se compone de una sucesión de 4 zumbadores contiguos, Karel dibuja
un cuadrado de 5x5?

Escrito por Enrique Lira Vargas

Los sensores de Kare
Karel como buen robot, tiene sensores, los cuales le permiten saber cosas respecto a las condiciones en las que se
encuentra. Cada uno de estossensores, puede ser preguntado mediante una Función Booleana específica para cada
sensor la cual es denominada booleana por la cualidad de que solo puede ser verdadera o falsa. A continuación veremos
cada una de ellas:
PASCAL
frente-libre
frente-bloqueado
izquierda-libre
izquierda-bloqueada
derecha-libre
derecha-bloqueada
junto-a-zumbador
no-junto-a-zumbador
algun-zumbador-en-la-mochilaningun-zumbador-en-la-mochila
orientado-al-norte
orientado-al-sur
orientado-al-este
orientado-al-oeste
no-orientado-al-norte
no-orientado-al-sur
no-orientado-al-este
no-orientado-al-oeste

JAVA
frontIsClear
frontIsBlocked
leftIsClear
leftIsBlocked
rightIsClear
rightIsBlocked
nextToABeeper
notNextToABeeper
anyBeepersInBeeperBag
noBeepersInBeeperBag
facingNorth
facingSouth
facingEast
facingWest
notFacingNorthnotFacingSouth
notFacingEast
notFacingWest

Cada una de estas funciones booleanas pregunta por una cosa en específico y su nombre lo indica, sin embargo la
función junto-a-zumbador | nextToABeeper puede ser la más confusa, puesto que solo es verdadera cuando Karel está
sobre un zumbador.
Ahora veamos unos ejemplos de los valores que tomarían en diversas situaciones:

Escrito por Enrique Lira Vargas Zumbadores en la mochila: 6
PASCAL
JAVA
frente-libre
frontIsClear
frente-bloqueado
frontIsBlocked
izquierda-libre
leftIsClear
izquierda-bloqueada
leftIsBlocked
derecha-libre
rightIsClear
derecha-bloqueada
rightIsBlocked
junto-a-zumbador
nextToABeeper
no-junto-a-zumbador
notNextToABeeper
algun-zumbador-en-la-mochila
anyBeepersInBeeperBag
ningun-zumbador-en-la-mochila noBeepersInBeeperBag...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Ingles iii (pasado simple, pasado progresivo, futuro will y going to))
  • FASE III PASO 6 ANGELO VEGA
  • Karel
  • Karel
  • karel
  • Karel
  • karel
  • karel

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS