Un bucle anidado es un bucle dentro de otro bucle. Así podemos tener varios
bucles anidados según lo que queramos
hacer en nuestro programa.
Ejemplo: el caso de que quisiéramos
crear todas las tablas de multiplicar del 1 al 10.
Tendríamos que hacer
1 x 1,1 x 2,1 x 3...1 x 10
2 x 1,2 x 2, 2 x 3...2 x 10
.
.
10 x 1,10 x 2,10 x 3.....10 x 10
El primer factor podría ser una
variable que iría cambiando 1 al 10
y el segundo seria otra variable que
iría cambiando del 1 al 10.
Con eso sabemos que tenemos las
variables: factor1,factor2.
Con estas dos variables tenemos las
suficientes para nuestro programa.
Podíamos tener una tercera para el
resultado, pero no es realmente necesaria.
Usaremos el tipo de bucle que
queramos,conociendo como es.
Definimos las variables:
Tipo entero: factor1,factor2
Para factor1 repetir de 1 hasta 10
Para factor2 repetir de 1 hasta 10
Mostrar factor1 & “ * “ &
factor2 & “ = “ & (factor1 * factor2)
Fin Para
Fin Para
Un ejemplo típico de uso de los bucles
anidados es con el uso de un array de varias
dimensiones. Si tuviéramos una pizarra
en la que vamos a dibujar un punto, necesitaríamos
saber dos coordenadas. La x y la y. Si
tuviéramos almacenados en un array estas coordenadas
tal que así:
coordenadas(x,y)
Para leer todas los datos del array
coordenadas lo mas aconsejable es usar dos bucles.
Uno dentro del otro. Anidados
Así iríamos leyendo:
coordenadas(0,0),coordenadas(0,1),coordenadas(0,2)....
coordenadas(1,0),coordenadas(1,1),coordenadas(1,2)...
.
.
coordenadas(x,y)
Hasta llegar al ultimo valor almacenado
en el array.
Podemos crear una rejilla. Para el uso
de gráficas es fundamental.
Bien. Cuando queremos comentar algo en
un programa Gambas usamos el símbolo “ ' “
Así una linea de comentario tendría
una aspecto como esto.
' Esto es un ejemplo de comentario
En este código fuente que os pongo
ahora. Veréis que en FORM_OPEN()
existen lineas comentadas. Cada linea
llama a un procedimiento que ejecuta
un tipo distinto de bucle anidado. Como
me interesa ver el resultado de uno
de ellos. Comento el resto y dejo solo
uno para que se ejecute.
Aquí tenéis un ejemplo de la creación de una rejilla.
Puedes hacer click en las celdas que la forman.
Muy bueno el ejemplo de regilla...se me ocurren muchas cosas que se pueden basar en el (realizar mapas de juegos :) )
ResponderEliminarPerdona que no te contestase antes.La rejilla es vital en la mayoría de los juegos.Buscaminas,barcos,mapas.Como tu dices, se pueden hacer muchísimas cosas. :-)
ResponderEliminarque es anidado 0+1 ????
ResponderEliminar