Bucles for en Octave
En esta lección, te guiaré en la creación de un bucle utilizando la sentencia for en Octave.
¿Qué es exactamente un bucle for? Es una instrucción que te permite ejecutar de manera cíclica un conjunto de instrucciones un número determinado de veces. A cada ejecución de este conjunto de instrucciones se le llama iteración.
La sentencia for se estructura de la siguiente manera: "for inicio:paso:final", donde se establece el punto de inicio y de finalización del bucle.
for variable = inicio:paso:final
bloque de instrucciones
end
El paso (o incremento) es el aumento que se produce después de cada iteración. Si no se especifica, se asume por defecto que es +1.
El bloque de instrucciones a ejecutar puede estar compuesto por una o varias sentencias.
La palabra clave "end" señala el final del bloque de instrucciones.
Es importante destacar que el bucle for es un bucle determinado, ya que conoces el número de iteraciones que realizará desde el inicio. Para otros tipos de bucles, cuyo número de iteraciones no se conoce de antemano, puedes utilizar las sentencias while y do-until.
Ahora, veamos un ejemplo práctico.
Este script imprime los números del 1 al 9
for x=1:9
disp(x);
end
En este caso, el rango está compuesto por dos valores, 1:9, que corresponden al inicio (1) y al final (9).
El paso no se especifica, por lo que se asume que es un incremento de uno (+1) por defecto.
La salida del script es la siguiente:
1
2
3
4
5
6
7
8
9
También puedes establecer un incremento distinto.
Por ejemplo, este script utiliza un paso de +2 después de cada iteración.
for x=1:2:9
disp(x);
end
En este caso, el rango está compuesto por tres valores 1:2:9, es decir, inicio (1), paso (+2), final (9).
El script imprime los números impares del 1 al 9.
1
3
5
7
9
Si estableces un paso negativo, puedes conseguir un decremento en lugar de un incremento.
Por ejemplo, este script utiliza un decremento de -1 después de cada iteración.
for x=9:-1:1
disp(x);
end
En este caso, el valor inicial (9) es mayor que el valor final (1) porque el paso es negativo (-1).
La salida es una cuenta regresiva.
9
8
7
6
5
4
3
2
1
Además, puedes usar la sentencia for para iterar a través de los elementos de un objeto iterable (por ejemplo, un array).
Por ejemplo, puedes usar el bucle for para leer el contenido de un array
v = [1 2 3 4]
for x=v
disp(x);
end
Este script itera a través de los elementos del array desde el primero hasta el último y los imprime en la pantalla.
1
2
3
4
Ahora ya tienes una visión bastante completa de cómo funcionan los bucles for.