PROCEDIMIENTOS RECURSIVOS
Hasta ahora, para conseguir que un grupo de instrucciones se repitan de manera permanente hemos
utilizado la instrucción siempre. Vamos a ver, a continuación, otra manera de hacerlo utilizando un
procedimiento recursivo; es decir, un procedimiento que, antes de finalizar, se vuelve a llamar a si
mismo.
En definitiva, las instrucciones que hay entre los corchetes de la instrucción siempre las incluimos en
un procedimiento que vamos a llamar movimiento y cambiamos la instrucción siempre por una
llamada a ese procedimiento:
para movimiento
av 1 repite 2000 []
si píxel = [0 0 0] [ponpos [-210 130]]
movimiento
fin
para juego
bp sl
ponfoco [Pantalla de MSWLogo]
ponteclado [control]
cargadib “circuito.bmp
ponpos [-210 130] gd 90
movimiento
fin
Para dar por finalizado un procedimiento recursivo o, en general, cualquier procedimiento (sin llegar a
la instrucción fin) se utiliza la instrucción alto
Ejemplo:
Hemos modificado el procedimiento movimiento para que, si la tortuga encuentra una zona de
color rojo, se de por finalizada su ejecución. El programa regresaría al procedimiento juego en la
instrucción que sigue a movimiento, en este caso, fin.
para movimiento
av 1 repite 2000 []
si píxel = [0 0 0] [ponpos [-210 130]]
si píxel = [255 0 0] [alto]
movimiento
fin
ACTIVIDADES:
13. Realizar un programa que realice la siguiente secuencia:
- Dibuja un cuadrado de color rojo, grosor 3 y 50 puntos de lado.
- Transcurridos 4 segundos lo pone de color amarillo.
- Pasados otros 2 segundos el color cambia a verde.
- Después de 1 segundo vuelve a iniciarse el ciclo.
Siguiente
[…] Siguiente […]
ResponderEliminar[…] Videojuego de coches (IX) […]
ResponderEliminar