Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Refuerza Los Conocimientos Sobre La Lógica Repetitiva en Lenguaje C
Refuerza Los Conocimientos Sobre La Lógica Repetitiva en Lenguaje C
• Actualización de variables
• La instrucción break
• El lazo de repetición infinito.
EL167
EL227 SOFTWARE PARA INGENIERÍA
EL227
Actualizar el valor de una variable
Casos:
EL167
EL227 SOFTWARE PARA INGENIERÍA
Ejemplos:
Resultado de la ejecución
Resultado de la ejecución
Resultado de la ejecución
EL167
EL227 SOFTWARE PARA INGENIERÍA
Uso de las ABREVIATURAS del lenguaje C en la actualización de variables
Casos:
Abreviatura
X=X+k X += k
X=X–k X –= k
X=X*k X *= k
X=X/k X /= k
Abreviatura
X=X+1 X++
X=X-1 X--
EL167
EL227 SOFTWARE PARA INGENIERÍA
Ejemplos:
Resultado de la ejecución
Resultado de la ejecución
Resultado de la ejecución
EL167
EL227 SOFTWARE PARA INGENIERÍA
Ejemplos:
Resultado de la ejecución
Resultado de la ejecución
Resultado de la ejecución
EL167
EL227 SOFTWARE PARA INGENIERÍA
Estructuras de control repetitivo del lenguaje C
Sabemos que una estructura de repetición permite repetir la ejecución de un bloque de instrucciones.
Sería conveniente escribir el bloque de instrucciones solo una vez y luego implementar un método para
informar al programa que repita su ejecución.
Dichos métodos los encontramos en las estructuras de control repetitivo también llamadas lazos o bucles
EL167
EL227 SOFTWARE PARA INGENIERÍA
Ejemplo:
Programa para imprimir la serie:
2000 1900 1800 1700 1600 1500 . . . . . . . . . . .500 400 300 200 100
Funcionamiento algorítmico
Codificación en lenguaje C
1
1 F
while( expresión )
{ V
MIENTRAS la expresión sea verdadera
2
bloque de ejecutar el bloque de instrucciones,
intrucciones cuando sea falsa ya no se ingresa a
2
ejecutar el bloque y el while termina
i 2000: entero
Mientras i sea mayor o igual a 100,
ejecutar el bloque:
F
i ≥ 100
i,“ “
FIN
Resultado de la ejecución
EL167
EL227 SOFTWARE PARA INGENIERÍA
Mas ejemplos:
EL167
EL227 SOFTWARE PARA INGENIERÍA
Estructura de repetición PARA (for)
Codificación en C (for):
Para i -> 2000:
Para i desde 2000 hasta 100, Ejecuta:
decreciendo de 100 en 100,
ejecutar el bloque: Para i -> 1900:
Ejecuta:
Ejecuta:
EL167
EL227 SOFTWARE PARA INGENIERÍA
Funcionamiento algorítmico del for
i,“ “ 3
3 printf("%i ",i);
4 i i - 100
FIN
fin del for i es la variable de iteración ya que de
su valor dependerá el número de
veces que se ejecutará el bloque de
instrucciones.
EL167 SOFTWARE PARA INGENIERÍA
EL227
Mas ejemplos:
for(int k=0;k<=8;k+=3) for(int i=8; i>0; i--) for(int a=2; a*2<16; a++)
{ { {
bloque bloque bloque
} } }
EL167
EL227 SOFTWARE PARA INGENIERÍA
Estructura de repetición HACER MIENTRAS (do-while)
do
1
{
HACER la ejecución del bloque de
1 instrucciones MIENTRAS la expresión
bloque de sea verdadera, cuando sea falsa ya
intrucciones no se ingresa a ejecutar el bloque y
2 el do-while termina
} 2
while( expresión );
V F
EL167
EL227 SOFTWARE PARA INGENIERÍA
Diagrama de flujo: Codificación en C (do while):
INICIO Este bloque de instrucciones
se ejecutará 20 veces
i 2000: entero
Hacer:
i,“ “
F
i ≥ 100
FIN
Resultado de la ejecución
En un inicio el do-while
primero HACE la ejecución
del bloque de instrucciones
En un inicio el while primero y luego evalúa la expresión.
evalúa la expresión y si es
verdadera HACE la ejecución
del bloque de instrucciones
bloque de
bloque de
intrucciones
intrucciones
EL167
EL227 SOFTWARE PARA INGENIERÍA
Ejemplo: Validación del ingreso de un dato
Programa que pida un número entero mientras este tenga un valor negativo, caso contrario se dejará de
pedir.
Ejemplo de la ejecución
Que el número
ingresado sea negativo
Las buenas prácticas sugieren el uso del while o do-while en vez del for
F
num < 0
num
EL167
EL227 SOFTWARE PARA INGENIERÍA
Diagrama de flujo:
Codificación en C (usando do-while):
INICIO
num: entero
num
F
num < 0
Hacer:
FIN
Ejemplo de la ejecución
Resultado de la ejecución
F
i ≤ 20
“*****” , SALTO
i i+1
FIN
Resultado de la ejecución
Ejemplo en C
El ejemplo mostrado arriba, representa un lazo infinito, ya que la condición evaluada siempre es verdadera (1). El
bloque de instrucciones se ejecutará indefinidamente.
EL167
EL227 SOFTWARE PARA INGENIERÍA
Un lazo infinito podría ser utilizado junto a la instrucción break
Ejemplo de ejecución
Resultado de la ejecución
EL167
EL227 SOFTWARE PARA INGENIERÍA
Codificación en C usando while: Codificación en C usando do-while:
EL167
EL227 SOFTWARE PARA INGENIERÍA
Pero también se puede usar un lazo infinito y break:
Al ejecutarse la instrucción
break, el lazo infinito se
“rompe”
Ejemplo de la ejecución
EL167
EL227 SOFTWARE PARA INGENIERÍA
Codificación en C:
EL167
EL227 SOFTWARE PARA INGENIERÍA
Uso de un acumulador
Ejemplo: Desarrollar un programa que genere la nota de 10 alumnos de manera aleatoria
y determine el promedio de todas las notas.
Ejemplo de la ejecución
EL167
EL227 SOFTWARE PARA INGENIERÍA
Codificación en C:
EL167
EL227 SOFTWARE PARA INGENIERÍA
Uso de una bandera
Ejemplo: Desarrollar un programa que genere la nota de 10 alumnos de manera aleatoria
y al final muestre un mensaje indicando si hubo algún aprobado o no.
Ejemplo de la ejecución
Ejemplo de la ejecución