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