Instrucciones de control de bucle
Con instrucciones de control de bucle, puede ejecutar de manera repetida un bloque de código. Existen dos tipos de bucles:
Las instrucciones
forse repiten un número específico de veces y realizan un seguimiento de cada iteración con una variable de índice en aumento.Por ejemplo, asigne previamente un vector de 10 elementos y calcule cinco valores:
x = ones(1,10); for n = 2:6 x(n) = 2 * x(n - 1); endLas instrucciones
whilese repiten siempre y cuando la condición se mantenga verdadera.Por ejemplo, encuentre el primer número entero
npara el quefactorial(n)es un número de 100 dígitos:n = 1; nFactorial = 1; while nFactorial < 1e100 n = n + 1; nFactorial = nFactorial * n; end
Cada bucle requiere la palabra clave end.
Es recomendable sangrar los bucles para mejorar su legibilidad, en especial cuando están anidados (es decir, cuando un bucle contiene otro bucle):
A = zeros(5,100);
for m = 1:5
for n = 1:100
A(m, n) = 1/(m + n - 1);
end
endPuede salir de un bucle de forma programática con una instrucción break o saltar a la siguiente iteración de un bucle con una instrucción continue. Por ejemplo, cuente el número de líneas en la ayuda para la función magic (es decir, todas las líneas de comentarios hasta llegar a una línea en blanco):
fid = fopen('magic.m','r');
count = 0;
while ~feof(fid)
line = fgetl(fid);
if isempty(line)
break
elseif ~strncmp(line,'%',1)
continue
end
count = count + 1;
end
fprintf('%d lines in MAGIC help\n',count);
fclose(fid);Sugerencia
Si inadvertidamente crea un bucle infinito (un bucle que nunca termina por sí mismo), detenga la ejecución del bucle pulsando Ctrl + C.
Consulte también
for | while | break | continue | end