Está en la página 1de 10

Lazos de repeticin

Luis A. Muoz 2013 - UPC


Lazos de repeticin
Los lazos de repeticin (tambin llamados
bucles o iteraciones) son otro mtodo para
controlar el flujo de un programa.
En un lazo un comando o una secuencia de
estos se repite varias veces consecutivamente.
Cada una de estas repeticiones se denomina
paso o iteracin.
Uno de los mtodos de definir lazos es con el
comando for-end.
Lazo forend
En este tipo de lazo se realiza un numero definido de
iteraciones.
En el primer paso k toma el valor de f y el sistema
ejecuta los comandos que se encuentran entre las
instrucciones for y end. Seguidamente el sistema
vuelve a la instruccin for para realizar el segundo
paso. Ahora k toma el valor de k=f+s y los comandos
anteriores se vuelven a ejecutar. Esto seguir as hasta
que k tome el valor de k=t.
for k = f:s:t

Lazo forend

programa MATLAB

for k=f:s:t
......
Grupo de comandos
de MATLAB

end
Por ejemplo, si k = 1:2:9, se llevaran a cabo cinco
interaciones y k tomar los valores de 1, 3, 5, 7 y 9 en
cada iteracin del bucle.
Lazo forend
Utilizar un lazo tipo for-end en un archivo
script para calcular la suma de los primeros n
trminos de la siguiente serie numrica. Ejecutar
el fichero para n=4 y n=20.
Lazo forend
n = input(Introduzca el numero de terminos: );
S = 0; %Valor inicial de la suma
for k = 1:n %El paso por defecto es = 1
S = S+(-1)^k*k/2^k;
end
fprintf(El valor de la serie es: %f,S);
>>lazo1
Introduzca el numero de terminos: 4
El valor de la serie es: -0.125000

>>lazo1
Introduzca el numero de terminos: 20
El valor de la serie es: -0.222216
Lazo whileend
Otro de los mtodos de definir lazos es con el
comando while-end.
Este permite realizar un lazo cuando no se
conoce de antemano cuantas iteraciones es
necesario realizar.
while expresion condicional

Lazo whileend
while expresion_condicional
......
Grupo de comandos
de MATLAB

end
Al menos una de las variables de la expresin condicional
debe de cambiar de valor por la ejecucin de los
comandos que estn entre la sentencia while y la
sentencia end. En caso contrario, si ninguna de las
variables cambia, la condicin del while se mantendr
siempre igual y el bucle nunca acabar (bucle infinito).
Lazo whileend
Utilizar un lazo while-end para calcular la
funcin f(t) = 3e
t/100
hasta f(t) = 50.

t = 0; f = 3.*exp(t./100); %Valores iniciales
while f <= 50 %Calcular hasta que f <= 50
t = t + 0.01;
f = 3.*exp(t./100);
end
disp(t) %Muestra el resultado
>>lazo2

281.3500
break y continue
Cuando se introduce el comando break dentro
un lazo, termina de forma completa la ejecucin
del lazo (no solamente el ltimo paso sino todo el
lazo). Cuando este comando aparece la ejecucin
salta hasta el comando end del lazo y continua
con el siguiente comando (no vuelve hacia arriba
en la ejecucin).
Por el contrario, el comandos continue detiene
la ejecucin del lazo, salta hasta el comandos end
y retorna a la parte superior del lazo para una
nueva iteracin.

También podría gustarte