Programación en Winlogo
 
 

| Introducción | Primitivas | Recursividad | Micromundo REESS | Programación de la Controladora |

Importancia de la recursividad en LOGO.

 

Se llama recursividad a la posibilidad que ofrece un programa diseñado en Logo de llamarse a sí mismo en un bucle sin fin.

Las estructuras recursivas se utilizan muy a menudo en los programas de robótica. En gran cantidad de ocasiones las máquinas, además de ejecutar acciones habituales, están alertas ante cualquier cambio que pueda producirse gracias a su programación. Dentro de su programa de funcionamiento, se incluyen programas recursivos que se activan debido a los cambios en las condiciones de la máquina.
Conviene tener en cuenta que la recursividad es más que un bucle, una llamada al propio programa para que vuelva a realizar las mismas acciones en un ciclo sin fin, por tanto cada vez que Logo se llama a sí mismo, genera un nuevo programa que debe ejecutarse en su totalidad. Esta última afirmación, que puede parecer una evidencia incuestionable, sirve como eficaz sistema de control de los programas recursivos y debe tenerse siempre presente para no recargar los programas con la "basura de las colas" que se van generando.
La recursividad se consigue el Logo mediante la definición de lo que llamamos prodedimientos.

Realizando procecimientos.

 

Formato:

Para proced
. . . . . .
. . . . . .
. . . . . .
fin

Acción:
Para define un procedimiento de nombre proced que siempre acabará con la primitiva fin.
Si queremos que se repita indefinidamente, colocamos el nombre del procedimiento antes de la primitiva fin.
Los nombres de los procedimientos son sensibles a las mayúsculas y minúsculas. No es la mismo escribir Intermitente, que INTERMITENTE o que intermitente.

Ejemplo:

Procecimiento no recursivo Procedimiento recursivo
Para intermitente
EscribePuerto 888 1
Espera 50
EscribePuerto 888 0
Espera 50
fin
Para intermitente
EscribePuerto 888 1
Espera 50
EscribePuerto 888 0
Espera 50
intermitente
fin

Para detener la ejecución de un procedimiento hay que pulsar la tecla “escape”.

Definir procedimientos:
Una vez escrito un procedimiento, recursivo o no, es necesario definirlo para que se puede utilizar en los programas como cualquier otra primitiva. Para ello es necesario situar el cursor en la línea de la primitiva Fin y pulsar la tecla Intro.
Cualquier cambio en el conjunto de órdenes de un procedimiento, requiere que sea nuevamente definido.


  Subir                                                                      | Página actualizada el 11 Junio, 2004 | © Proyecto REESS | Realizado en Béjar en el curso 2002/2003 |