Ucv 2015-1_fd_p_s1_estructuras repetitivas
Transcript of Ucv 2015-1_fd_p_s1_estructuras repetitivas
Fundamentos de Programación
Experiencia de aprendizaje:
Mag. Ing. José C. Benítez P.
Estructuras Repetitivas
2
Experiencia de aprendizaje:
Estructuras repetitivas1. Logros de la EA.
2. Introducción.
3. Número determinado de repeticiones.
4. Sentencia FOR
5. Ejemplo.
6. Número indeterminado de repeticiones.
7. Sentencia WHILE
8. Ejemplo.
9. Sentencia DO-WHILE
10. Ejemplo.
11. Ejercicios.
3
Logros de la experiencia de aprendizaje
Al terminar la experiencia de aprendizaje el
alumno debe ser capaz de:
� Resolver un problema que contenga
estructuras repetitivas.
� Diseñar e implementar una aplicación
empleando estructuras repetitivas.
4
Introducción
� Algoritmos que necesitan repetir una acción varias veces.
� Estructura denominada bucle o lazo.
� Cada repetición se denomina iteración.
� Hace falta un medio para detener las repeticiones.
5
Número determinado de repeticiones
Ejecuta las acciones del bucle un número especificado de
veces, y controla automáticamente el número de
iteraciones con una variable contador.
instrucción1; //Creación de la variable
instrucción2;
// Inicialización de la variable,
verificación y actualización de la variable
for (i=1; i<5; i++) {
instrucción3;
instrucción4;
}
instrucción5;
instrucción6;
6
Sentencia FOR
� Su uso es indicado en ciclos controlados por un contador.
� Ejecuta sentencias un número fijo de veces.
� Sintaxis:
for (Inicialización; Condición; Incre/Decre)
sentencias;
//imprime Hola 10 veces
For (int i = 0 ; i<10 ; i++)
System.out.println(“Hola!”);
7
Sentencia FOR
� Sintaxis:
for (Inicialización; Condición; Incre/Decre)
sentencias;
� Inicialización: define valor de variables de control.
� Condición: expresión lógica que determina si el ciclo se hace o no.
� Incremento: aumenta o disminuye la variables(s) de control
� Sentencias: son las acciones que se ejecutan en el ciclo.
Ejemplo:
//imprime Hola 10 veces
for (int i = 0 ; i<10 ; i++) //Inicialización; Condición; Incremento
System.out.println(“Hola!”); //Sentencia
8
Sentencia FOR
Ejemplo:
//Imprime los cuadrado de los números naturales del 1 al 10 en
forma ascendente y descendente
for (int i = 0 ; i<10 ; i++) //Inicialización; Condición; Incremento
System.out.println (“\t” + n +”\t” + n * n); //Sentencia
for (int n= 10; n>5; n--)
System.out.println(“\t” + n +”\t” + n * n);
9
Sentencia FOR
Sentencias nulas en FOR
� Cualquiera de las partes del FOR puede ser nula.
� Se usa “;”
� Puede simular un while
for (; contador < 5 ; )
{ contador ++;
System.out.println(contador + “\t”)
}
10
Ejemplo:
Contar en forma ascendente y descendente del 1 al 13
mediante la estructura repetitiva FOR.
11
Número indeterminado de repeticiones
Ejecuta las acciones del bucle, sin especificar el número de
veces, controlando la finalización con una condición
(expresión booleana).
instrucción1; //Creación de la variable
instrucción2; // Inicialización de la variable
while (condición) { // Verificación
instrucción3;
instrucción4; // Actualización de la variable
}
instrucción5;
instrucción6;
12
Sentencia WHILE
while (condición)
sentencia;
ó
while (Condición)
{
sentencia 1; …
sentencia n;
}
� Las sentencias se ejecutan mientras la condición sea verdadera
� Varias acciones/sentencias usan { }
13
Ejemplo:
Contar en forma ascendente y descendente del 1 al 13
mediante la estructura repetitiva WHILE.
14
Número indeterminado de repeticiones
Ejecuta las acciones del bucle, sin especificar el número de
veces, controlando la finalización con una condición
(expresión booleana).
instrucción1; //Creación de la variable
instrucción2; // Inicialización de la variable
do {
instrucción3;
instrucción4; // Actualización de la variable
} while (condición); // Verificación
instrucción5;
instrucción6;
15
Sentencia DO-WHILE
� Es un ciclo que se ejecuta al menos una vez,
y luego revisa la condición para iterar o salir
del ciclo.
� Formato
do {
sentencias;
} while (expresión);
16
Ejemplo:
Contar en forma ascendente y descendente del 1 al 13
mediante la estructura repetitiva DO-WHILE.
17
Estructuras repetitivas anidadas
Ejecuta las acciones del bucle, sin especificar el número de
veces, controlando la finalización con una condición
(expresión booleana).
instrucción1; //Creación de una variable
instrucción2;
for (i=1; i<10; i++) {
instrucción3;
for (j=1; j<10; j++) {
instrucción4;
instrucción5;
}
instrucción6;
instrucción7;
}
instrucción8;
instrucción9;
19
Estructuras repetitivas infinitas
Ejecuta las acciones del bucle, sin especificar el número de
veces, controlando la finalización con una condición
(expresión booleana).
instrucción1; //Creación de la variable
instrucción2; // Inicialización de la variable
while (1) {// No hay verificación
instrucción3;
instrucción4; // Actualización de la variable
instrucción5; // Salida del bucle con break
};
instrucción5;
instrucción6;
22
Diseño de estructuras repetitivas
Debe considerar lo siguiente para elaborar ciclos
efectivos:
• El cuerpo del bucle
• Sentencia de inicialización
• Condiciones de terminación
23
Preguntas
Al término de la experiencia de aprendizaje el alumno
debe ser capaz de responder las siguientes preguntas:
1. ¿Qué son las estructuras repetitivas?.
2. ¿Cómo se clasifican las estructuras repetitivas?.
3. ¿Existe equivalencia entre las diferentes estructuras
repetitivas?.
4. ¿Para qué se usan las estructuras repetitivas?.