You are on page 1of 26

INTRODUCCIÓN EN PROGRAMACIÓN: BUCLES

Y DIAGRAMAS DE FLUJO

Programación en C++
Carlos Fernando Arenas
2018
Agenda
• Ejercicio preliminar
• Bucles en algoritmos
• Diagramas de flujo
Ejercicio de algoritmos
Realizar la suma de todos los
números pares entre 2 y 100.
Tenga en consideración que
para este algoritmo NO puede ¿Cómo lo haría?
utilizar el elemento BIFURCAR.
Redactar el algoritmo
correspondiente.
BUCLES O CICLOS EN ALGORITMOS
Bucles en algoritmos
• Los ciclos o bucles son aquellos que se
utilizan para ejecutar un conjunto de
instrucciones tantas veces como lo permite el
cumplimiento de la expresión booleana que
lo controla.
• Las instrucciones para ciclos resuelven el
problema de repetir todo el programa o
cierta parte del programa más de una vez
• A cada repetición del conjunto de acciones se
denomina iteración.
Tipos de bucles

• Bucles Para (For)


• Bucles Mientras (While)
• Bucles Haga-Mientras (Do-While)
Bucles Para (For)
• Los bucles Para (For) se utilizan cuando el programa sabe el número
de vueltas (ciclos) que tiene que realizar cuando entra en el bucle.
• El número de vueltas se puede indicar por una constante (por
ejemplo "5" vueltas) o por una expresión (por ejemplo "n " vueltas o
"n *j" vueltas.
• Para llevar la cuenta del número de iteraciones que se realizan en el
bucle se utiliza una variable entera, de esta forma, en todo
momento se sabe el número de iteración sin más que observar el
valor de la variable, esta variable también se utiliza para saber
cuándo se debe acabar el bucle.
• En este tipo de bucles se debe especificar al comienzo del mismo la
variable entera que se utilizará para contar el número de iteraciones
y el número de vueltas que debe realizar el bucle.
Estructura bucles Para (For)
Para <variable_contador> hasta <parámetro> en
<incremento> hacer
• Variable_Contador: Permite establecer el valor inicial 1. Inicio.
del bucle que será el que vaya incrementando por 2. Establecer Parámetro a x
cada iteración del bucle 3. …
• Parámetro: Valor de comparación final de 4. Para Variable_Contador hasta Parametro en 1 hacer
Variable_Contador para establecer el fin del bucle 5. …
• Incremento: Determina cuanto debe aumentar la 6. FinPara
variable del contador cada vez que ingrese al ciclo 7. …
8. Fin.
Ejemplos de algoritmos – Bucle Para
Ejemplo N° 1 1. Inicio.
2. Establecer Parametro a 20
Realizar la suma de 3. Establecer Variable_Contador a 2
todos los números 4. Establecer Suma a 0
pares entre 2 y 20. 5. Para Variable_Contador hasta Parametro en 2 hacer
6. Suma = (Suma + Variable_Contador)
7. FinPara
8. Imprimir “La suma es: ”Suma
9. Fin.
Bucles Mientras (While)
• El bucle While se utiliza cuando realmente no sabemos el número de
iteraciones que se van a realizar en el bucle, sin embargo sí sabemos
que mientras se cumpla una determinada condición debemos
realizar el bucle.
• Cuando esa condición ya no se cumpla entonces el bucle finalizará.
• En este tipo de bucles no existe ninguna variable que indique el
número de iteraciones que ha realizado o falta por realizar. El único
control que utiliza es una condición que está al comienzo del bucle,
mientras esta condición sea cierta se realizan iteraciones y en el
momento que sea falsa se finaliza el bucle.
• Obsérvese que la condición está al comienzo del bucle y ésta hace
las veces de una puerta de entrada al mismo. La puerta se abre si la
condición es verdadera y la puerta se cierra si la condición es falsa.
Estructura bucles Mientras (While)
Mientras (<variable_contador> < <parámetro>)
• Variable_Contador: Permite establecer el valor inicial
del bucle que será el que vaya incrementando por 1. Inicio.
cada iteración del bucle 2. Establecer Parámetro a 0
• Parámetro: Valor de comparación final de 3. Establecer Variable_Contador a 0
Variable_Contador para establecer el fin del bucle 4. Leer Parametro
5. …
6. Mientras (Variable_Contador < Parametro)
7. …
8. FinMientras
9. …
10. Fin.
Ejemplos de algoritmos – Bucle Mientras
Ejemplo N° 1 1. Inicio.
2. Establecer Parametro a 0
Realizar la suma de 3. Establecer Variable_Contador a 2
todos los números 4. Establecer Suma a 0
pares entre 2 y un 5. Leer Parametro
6. Mientras (Variable_Contador < Parametro)
número leído por
7. Suma = (Suma + Variable_Contador)
teclado. 8. Variable_Contador = (Variable_Contador + 2)
9. FinMientras
10. Imprimir “La suma es: ”Suma
11. Fin.
Bucles Haga-Mientras (Do-While)
• Los bucles for y while tienen la característica común que la condición
se evaluaba antes de realizar el bucle, así cabía la posibilidad de que
no se realizara ninguna iteración . La principal diferencia del bucle
do-while, respecto a los anteriores, es que éstos evalúan la
condición al fin al del bucle; así el bucle siempre realizará al menos
una iteración .
• En los bucles do-while no se sabe a priori el número de iteraciones
que se van a realizar, depende de la condición que hay al fin al del bu
cle; si ésta es cierta se vuelve a realizar u n a iteración , mientras que
si es falsa se acaba la ejecución del bucle.
• La condición al fin al del bucle actúa como una compuerta de salida
del mismo, si la condición es verdadera esta compuerta estará
cerrada y por tanto debemos realizar una nueva iteración . Si la
condición es falsa, entonces la compuerta estará abierta y se podrá
abandonar la ejecución del bucle.
Ejemplos de algoritmos – Bucle Haga-Mientras
Ejemplo N° 1 1. Inicio.
2. Establecer Parametro a 0
Realizar la suma de 3. Establecer Variable_Contador a 2
todos los números 4. Establecer Suma a 0
pares entre 2 y un 5. Leer Parametro
6. Haga
número leído por
7. Suma = (Suma + Variable_Contador)
teclado. 8. Variable_Contador = (Variable_Contador + 2)
9. Mientras (Variable_Contador <= Parametro)
10. Imprimir “La suma es: ”Suma
11. Fin.
Ejercicio de algoritmos – Bucles
Ejercicio N° 1
Calcular el promedio de las notas de 7 asignaturas leídas por teclado
utilizando los 3 tipos de bucles.
Ejercicio N° 2
Leer 10 números por teclado e imprimir cuantos son positivos y
cuantos son negativos
Ejercicio N° 3
Leer 20 números por teclado e imprimir cual de ellos es el menor y el
mayor
Ejercicio de algoritmos – Bucles
Ejercicio N° 4
Capturar el peso y la edad de 25 personas por teclado teniendo en
cuenta las siguientes categorías:
Categoría Edad
Niños 0 a 12 años
Jóvenes 13 a 29 años
Adultos 30 a 59 años
Mayores Mayores a 60 años
Ejercicio de algoritmos – Bucles

Ejercicio N° 5
Determinar la cantidad semanal de dinero que recibirá cada uno de los 10 obreros de una empresa. Se
sabe que cuando las horas que trabajo un obrero exceden de 40, el resto se convierte en horas extras
que se pagan al doble de una hora normal, cuando no exceden de 8; cuando las horas extras exceden
de 8 se pagan las primeras 8 al doble de lo que se paga por una hora normal y el resto al triple.
Diagramas de flujo
Diagramas de flujo

Un diagrama de flujo es un diagrama que describe un proceso,


sistema o algoritmo informático. Se usan ampliamente en numerosos
campos para documentar, estudiar, planificar, mejorar y comunicar
procesos que suelen ser complejos en diagramas claros y fáciles de
comprender. Los diagramas de flujo emplean rectángulos, óvalos,
diamantes y otras numerosas figuras para definir el tipo de paso,
junto con flechas conectoras que establecen el flujo y la secuencia.
Pueden variar desde diagramas simples y dibujados a mano hasta
diagramas exhaustivos creados por computadora que describen
múltiples pasos y rutas.
Simbolos comunes en
los diagramas de flujo
Simbolos comunes en
los diagramas de flujo
(2)
Ejemplo de diagramas de flujo
Simbolo de entrada/salida Simbolo de inicio/fin

Ejemplo N° 1
Hacer el diagrama de flujo para sumar
dos números leídos por teclado y
escribir el resultado.

Simbolo de proceso
Ejemplo de diagramas de flujo
Símbolo de documento (impresión) Símbolo de inicio/fin
Ejemplo N° 2
Hacer un diagrama de flujo
Símbolo de entrada/salida
que permita leer 2 números
diferentes y nos diga cual es el Escenario de flujo originado por una
decisión
mayor de los 2 números.

Simbolo de decisión
Ejemplo de diagramas de flujo
Ejemplo N° 3
Hacer un diagrama de flujo
que permita escribir los 100
primeros pares.

Haga Mientras I > 0


Taller
En grupos de 3 personas máximos complete las siguientes actividades:
• Genere los algoritmos para los ejercicios 1 al 5 mencionados previamente y por favor
documéntelos en un archivo Word.
• Apoyándose en la herramienta de diseño que prefiera (Paint, Power Point, Excel, Word, etc )
cree el diagrama de flujo para los ejercicios de algoritmos del 1 al 3

Una vez finalice los puntos anteriormente mencionados en el aula virtual antes del 20 de
agosto a media noche
Referencias bibliográficas
• [1] Curso Introducción a la programación en C++. Recuperado de: https://programacionfusa.wordpress.com/contenido/2-2-funcion-main/
• [2] Benjumea, Vicente (2017). Fundamentos de programación con lenguaje C++. Universidad de Malaga.
• [3] Joyanes Aguilar, L. (2008). Fundamentos de programación en C++: Algoritmos, estructura de datos y objetos. (4a. ed.). McGrawHill.
Madrid
• [4] Villalobos, Ricardo (2017). Fundamentos de programación en C++. Más de 100 algortimos codificados. Editorial Macro
• [5] Deitel, Harvey (2014). Cómo programar en C++. (9a.ed.). Editorial Pearson
• [6]Sanchez García, Lucas (2006). Programación en C++. Un enfoque práctico. Serie Schaum. McGrawHill. Madrid
• [7] Zahonero, Ignacio (2007). Estructura de datos en C++. McGrawHill. Madrid

You might also like