Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Estructuras secuenciales, selectivas e iterativas3
1. ESTRUCTURAS SECUENCIALES,
SELECTIVAS E ITERATIVAS
Preparado para el grupo de Informática Básica
Prof. María Zeballos
Resumen del libro Fundamentos de
programación (4ta-Edición)
Autor: Luis Joyanes Aguilar
2. Estructuras de repetición o iterativas
Como se puede deducir fácilmente, las estructuras de
de repetición (repetitivas o iterativas) se utilizan para
repetir un conjunto de sentencias.
Los programas utilizados hasta este momento han
examinado conceptos de programación, tales como
entradas, salidas, asignaciones, expresiones y
operaciones, sentencias secuenciales y de selección. Sin
embargo, muchos problemas requieren de características
de repetición, en las que algunos cálculos o secuencia de
instrucciones se repiten una y otra vez, utilizando
diferentes conjuntos de datos.
3. Estructuras de repetición o iterativas
Las estructuras que repiten una secuencia de instrucciones un número
determinado de veces se denominan bucles y se denomina iteración al
hecho de repetir la ejecución de una secuencia de acciones.
El concepto de bucle se describe como la sección de código que se
repite y que se denomina así ya que cuando termina la ejecución de la
última sentencia el flujo de control vuelve a la primera sentencia y
comienza otra repetición de las sentencias del código. Cada repetición
se conoce como iteración o pasada a través del bucle. Se estudian los
bucles más típicos, tales como mientras, hacer-mientras, repetir-hasta
que y desde (o para).
4. Estructuras de repetición o iterativas
En resumen, cuando se va a ejecutar un ciclo es importante considerar:
• Una variable que controle el ciclo, que tome un valor inicial
• ¿Cuántas veces se ejecutará?, tomando en cuenta una condición de parada.
• ¿Cuál es el cuerpo que se ejecutará?, el conjunto de instrucciones que se
repetirán.
5. Estructuras de repetición while
El bucle while tiene el aspecto siguiente:
Mientras que el valor de la expresión sea verdadero, es decir, no nulo y
diferente de 0, las instrucciones del bloque asociado al bucle se irán
repitiendo.
Para que el bucle pueda finalizar, la expresión tiene que evaluarse falsa y,
para ello, uno de los componentes de la expresión de la condición debe
modificarse en el bloque de instrucciones.
La comprobación puede ser falsa desde el inicio y en este caso las
instrucciones del bloque del bucle no se ejecutan.
while (expresion)
{ instrucciones; }
6. Estructuras de repetición while
Mientras i es menor que a, las instrucciones se
ejecutan:
al inicio a vale 3 e i vale 0: i < a: la
comprobación devuelve verdadero, las
instrucciones se ejecutarán, i aumenta en 1 y
ahora vale 1. i < a: la comprobación devuelve
verdadero, las instrucciones se ejecutarán, i
aumenta en 1 y ahora vale 2. i < a : la
comprobación devuelve verdadero, las
instrucciones se ejecutarán, i aumenta en 1 y
ahora vale 3. i < a : la comprobación
devuelve falso, fin del bucle, la ejecución
continúa con las instrucciones que siguen.
Por ejemplo:
int a=3,i=0;
while (i<a){
i++;
printf("i vale %dn",i);
}
printf("Fin del bucle con i=%d n",i);
7. Estructuras de repetición do - while
A diferencia del bucle while, las instrucciones
preceden la evaluación de la condición de
parada y por ello las instrucciones del bucle
siempre se ejecutarán al menos una vez.
Hacer - mientras que el valor de la
expresión sea verdadero, es decir, no nulo y
diferente de 0.
do {
instrucciones;
} while (expresión) ;
Por ejemplo:
int a=3,i=0;
do
{
i++;
printf("i vale %dn",i);
}
while (i<a)
printf("Fin del bucle con i=%d n",i);
El bucle do-while () tiene el aspecto siguiente:
8. Estructuras de repetición for
El bucle for tiene el aspecto siguiente:
donde:
expr1: es una asignación que se realiza solo una vez al comienzo del bucle
expr2: es la comprobación de parada que se evalúa al comienzo de cada iteración
expr3: es una modificación de variable presente en la comprobación para terminar el bucle.
for (expr1; expr2; expr3 )
{ instrucciones; }
Mientras la comprobación sea verdadera,
las instrucciones del bloque se ejecutarán.
Ejemplo:
int i;
for (i=0; i<3; i++)
printf("i=%dn",i);
9. Observe el orden de ejecución se descompone en:
Primera ejecución del bloque:
1) i se inicializa a 0, a continuación:
2) i se compara con 3, la comprobación es verdadera
3) entonces se ejecutan las instrucciones del bloque
4) y se incrementa i en 1, i igual a 1,
Segunda ejecución del bloque:
2) i es menor que 3,
3) se ejecutan las instrucciones del bloque
4) i se incrementa en 1, i igual a 2,
Tercera ejecución del bloque:
2) i es menor que 3,
3) se ejecutan las instrucciones del bloque
4) i se incrementa en 1, i igual a 3,
Parada del bucle:
2) i no es menor que 3, la comprobación devuelve falso termina el bucle.
El programa pasa a las instrucciones que sigan al bucle.
Estructuras de repetición for
for ( i=0; // 1 inicialización
i<3; // 2 comprobación
i++) // 4 incremento
printf("i=%dn",i); // 3 bloque de instrucciones