Estructura de repetición

Anuncio
Estructura de repetición
•Ejecución repetida de instrucciones en un
ciclo o loop
(Loop= rizo, lazo)
•Se clasifican según la forma en que terminan
LMM
Loop de decisión
termina con decisión lógica
Bloque 1
Pseudocódigo
V
Condición
?
DO
Bloque 1
IF condición EXIT
Bloque 2
ENDDO
F
Bloque 2
LMM
Sintaxis en Fortran
DO [etiqueta[, ] ] WHILE (expresión)
Bloque1
IF (condición) EXIT
Bloque2
[etiqueta] END DO
Etiqueta: número para especificar una instrucción ejecutable
Expresión: es una expresión escalar (un solo valor) lógica
(puede ser Falsa o Verdadera).
Problema 2.1
LMM
Loop controlado por contador o loop
DOFOR
número determinado de repeticiones o
iteraciones
[DO=hacer]
Pseudocódigo
V
i=inicio
DO FOR i=inicio, fin, incremento
Bloque
ENDDO
i>fin
?
i=i+incremento
F
Bloque
Si incremento <0
termina cuando i<fin
•Indice I tomará valores desde incio
hasta fin aumentando según
incremento
•Para cada valor de i, mientras i≤fin,
ejecuta Bloque
•Al llegar a ENDDO, se incrementa el
valor de i
•Termina cuando i>fin
LMM
Loop controlado por contador o loop
DOFOR
Número determinado de repeticiones o iteraciones
•Indice I : variable con valor inicial inicial y valor final fin
•
SE PRUEBA SI I ≤ fin
si lo es Æejecuta Bloque y vuelve al incio del
lazo
en ENDDO: se incrementa I por valor definido por
usuario (default 1)
• Si i > fin Æ sale del loop
LMM
Sintaxis en Fortran
[ Nombre:] DO [etiqueta, ] ] índice=inicio,final, incremento
Bloque
[etiqueta] finalizacion [Nombre]
Nombre (Opcional): nombre de la construcción DO.
etiqueta (Opcional en END DO): número para identificar la línea de
finalización, se escribe en las primeras 5 columnas
Índice: variable entera que toma el valor inicial inicio, aumenta por la
cantidad incremento (default 1) mientras sea menor o igual que final
Bloque: secuencia de cero o más instrucciones o construcciones.
Finalización: línea para indicar final del DO. Puede ser END DO,
CONTINUE o una instrucción.
NOTA: Puede haber un DO dentro de otro (anidado), pueden tener
misma etiqueta
Ejemplos enddo continue instrucción
LMM
Ejemplo con finalización END DO
LMM
Ejemplo con finalización
CONTINUE
Notar la etiqueta de continuación 10 en las primeras 5 columnas
LMM
Ejemplo final con instrucción
Notar la etiqueta de continuación 10 en las primeras 5 columnas de la
instrucción write
LMM
Ejemplo: suma de primeros n naturales
Descargar