El bucle "for"
Ejecuta[ ]
El comando Ejecuta[<lista de comandos>] es sin duda uno de los más potentes que tiene GeoGebra. Nos permite ejecutar una lista de comandos expresados en formato texto y en inglés. Por ejemplo:
Ejecuta[{"A=(3,5)","B=(-1,6)","Segment[A,B]"}]
Crea dos puntos A y B en dichas coordenadas y el segmento que los une. Los objetos creados se visualizan cuando GeoGebra termina de ejecutar todos los comando de la lista, antes no.
Secuencia[ ]
El comando Secuencia[ <Expresión>, <Variable>, <Valor inicial>, <Valor final>, <Incremento> ] nos permite crear una lista de objetos. Por ejemplo:
Secuencia[n^2,n,1,10] crea una lista con los quadrados de los 10 primeros números naturales.
Secuencia[x^n,2,1,10,2] crea una lista con cinco funciones, x, x^3, x^5, x^7 y x^9.
Es importante observar que este comando genera un único objeto de tipo lista. Todos los elementos de la lista comparten propiedades comunes como color, grosor del trazo, ubicación, etc. Es una forma de trabajar con menos objetos y, por tanto, más eficazmente.
Ejecuta[ Secuencia[ ] ]
Podemos combinar estos dos comandos para aumentar su potencialidad, como podemos observar en el ejemplo siguiente:
Ejecuta[Secuencia[“c”+a+”=Circle[C,”+a+”]”,a,1,8]]
Esta gran potencialidad tiene quatro inconvenientes:
- El comando no se guarda con la construcción. Una vez cerrado el programa, desaparece de la línea de entrada.
- Los comandos se tienen que escribir en inglés. No podemos escribir "Circunferencia", sinó "Circle".
- No resulta senzillo poner comillas dentro de comillas. No se puede poner: Ejecuta[Secuencia["TextoVertical[ 'Hola', (0,"+n+") ]",n,1,6]]
- Si queremos ejecutar más de un comando la cosa se complica bastante.
Repite[ ]
El comando Repite[ <Número>, <Comando de Guiones>, <Comando de Guiones>, ... ] ejecuta reiteradamente, tantas veces como indica el primer parámetro, los comandos de guiones que vienen a continuación. Por ejemplo, si en la linea de comandos escribimos:
a=0
b=1
Repite[8, Valor[b,b+a],Valo[a,a+1]
El resultado es: a=8 y b=29
La mejor opción para un "for"
Para solventar estos inconvenientes, podemos hacer lo siguiente:
- Creamos un objeto numérico a (el contador) y un botón.
- En la pestaña Al hacer clic de las propiedades del botón ponemos el siguiente guión: Valor[a,1] Repite[8,EjecutaAlActualizar[SC]]
- Creamos un objeto numérico SC.
- En la pestaña Al hacer clic de las propiedades de este objeto ponemos el siguiente guión: Renombra[Circunferencia[C,CopiaObjetoLibre[a]],”c”a] Valor[a,a+1]