PB U1 L3 Diagrama
PB U1 L3 Diagrama
Diagramas de flujo
Por: Ma. de la Luz Mendoza Uribe
sumadosnumeros
Inicia algoritmo
Entrada: numero1, numero2
1. Suma numero1 y numero2
2. Devuelve el resultado del paso 1
Termina algoritmo
La entrada se refiere a los números que el usuario va a ingresar por el teclado. A esos datos se les
denomina variables debido a que la información va a cambiar cada vez que se ejecute el algoritmo. En
el ejemplo anterior, las variables se encuentran representadas por: numero1 y numero2.
Para definir una variable deben tomarse en cuenta algunos aspectos como: escribir en minúsculas, sin
acento, sin espacio y sin caracteres especiales (@, /, $, #, etcétera). Si no se siguen estas reglas se
podría afectar el funcionamiento del programa.
Ya que se tienen definidas las variables se debe describir el proceso a realizar. En el ejemplo anterior
se hace la suma de los números y muestra al usuario el resultado.
Una manera de visualizar más fácilmente un algoritmo es mediante el uso de un diagrama de flujo, el
cual consiste en representar gráficamente la secuencia y el desarrollo del algoritmo, con la finalidad de
comprender, estructurar y probar si el algoritmo que se ha desarrollado funciona de manera pertinente.
1
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
Inicio
Lee:
numero 1,
numero 2
x= numero 1 +
numero 2
Escribe x
Fin
Pero, ¿cómo puedes realizar un diagrama de flujo? Antes de continuar es importante que conozcas
algunas definiciones sobre el tema.
Diagrama de flujo:
2
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
Simbología
Para crear un diagrama de flujo es necesario utilizar e interconectar una serie de símbolos
que permitan desarrollar la representación gráfica del diagrama. En la figura 2 se muestra a
detalle el símbolo, el nombre y la descripción de cada figura. Cabe aclarar que existen una gran
diversidad de símbolos, pero en este caso se revisarán los más utilizados.
3
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
Ya que se conoce cada símbolo con su nombre y descripción se debe estructurar el diagrama de flujo,
por lo que es pertinente seguir la secuencia de un algoritmo; en este caso, se retoma el
Ejemplo 1.
Para construir el diagrama de flujo del ejemplo anterior se ha numerado cada fila del algoritmo, tal como
se muestra en la figura 3.
Para realizar la traducción de un algoritmo en un diagrama de flujo se debe describir cada uno de los
pasos como se muestra en la tabla 1.
4
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
Fila Algoritmo para Descripción Diagrama de flujo Secuencia de los elementos del
sumar dos diagrama de flujo
números
1 SumaDosNumeros Muestra el nombre que se Recuerda que es importante
le ha asignado al indicar la secuencia del diagrama
algoritmo. por medio de flechas.
2 Inicia algoritmo Indica el inicio del
algoritmo. Esta acción es
prioritaria, pues Inicio
representa el inicio del
diagrama de flujo. Inicio
Para el inicio y fin del
diagrama de flujo siempre
se utiliza la misma figura, Leer:
donde sólo se modifica la numero 1,
leyenda del interior. número 2
3 Entrada: número Significa que el algoritmo
1, número 2 va a leer 2 datos. Para
hacer su representación
en el diagrama de flujo es Lee: x= numero 1 +
necesario utilizar el numero 1,
símbolo de entrada de
numero 2
numero 2
datos e incluir una
leyenda adecuada.
4 Suma número Realiza el procesamiento
1 y número 2 de los datos en el
algoritmo. Para hacer su Escribe x
representación en el x= numero 1 +
diagrama de flujo es numero 2
necesario utilizar el
símbolo de proceso e
incluir la acción que se
realiza.
Fin
5 Devuelve el Muestra el resultado que
resultado de la se ha obtenido en el
suma de los algoritmo. Para hacer su
números representación en el Escribe: x
diagrama de flujo es
necesario utilizar el
símbolo de salida de
datos e incluir una
leyenda que despliegue
(imprima) el resultado que
se obtuvo después del
procesamiento de la
información (x).
6 Termina algoritmo Indica el final del
algoritmo. Esta acción es
prioritaria, pues
representa la terminación Fin
del diagrama de flujo.
Tabla 1. De un algoritmo a un diagrama.
5
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
6
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
Es momento de preguntarte: ¿estás listo(a) para empezar a crear tus propios diagramas de flujo?,
¿cómo puedes crearlos?
Crea un algoritmo y un diagrama de flujo que sume 2 números considerando que se pedirá al
usuario que ingrese cada uno de los números. En este caso, el programa va a iniciar con la solicitud
al usuario de que escriba el primer número, después se le pide que ingrese el segundo número, luego
se sumarán los dos números y se mostrará el resultado en la pantalla. Tras analizar y comprender el
problema se crea el algoritmo como el que se muestra en la tabla 2.
Fila Algoritmo para Descripción Diagrama de flujo Secuencia de los elementos del
sumar dos diagrama de flujo
números
1 SumaDosNumeros Muestra el nombre Recuerda que es importante
que se le ha indicar la secuencia del diagrama
asignado al por medio de flechas.
algoritmo.
7
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
8
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
despliegue
(imprima) el
resultado que se
obtuvo después del
procesamiento de
la información (x).
9 Termina algoritmo Indica el final del
algoritmo. Esta
acción es Fin
prioritaria, pues
representa la
terminación del
diagrama de flujo.
Tabla 3. Algoritmo que suma dos números ingresados por el usuario a un diagrama de flujo.
Ejemplo de una estructura secuencial
Crea un algoritmo y un diagrama de flujo que multiplique dos números, considerando que se pedirá al
usuario que ingrese cada una de las cifras. En esta situación el programa va a iniciar al pedir al usuario
que escriba el primer número, después que ingrese el segundo número, luego de ello se multiplicarán
los dos números y se mostrará el resultado en la pantalla. Tras analizar y comprender el problema se
crea el algoritmo, como el que se muestra en la tabla 4.
10
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
Fila Algoritmo para sumar dos Secuencia de los elementos del
números diagrama de flujo
1 SumaDosNumeros
2 Inicia algoritmo Inicio
3 Pedir al usuario que
Escribe: Dame
escriba el número 1 el número 1
4 Entrada: número 1,
número 2
Lee: numero1
Tabla 5. Algoritmo que multiplica dos números ingresados por el usuario a un diagrama de flujo.
• El alumno debe ingresar las calificaciones del primer, segundo y tercer periodo de evaluación.
• La calificación final está integrada por el promedio de los tres periodos de evaluación.
11
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
Al analizar la situación, el algoritmo comenzará con la solicitud al usuario de que escriba la calificación
del primer parcial, la calificación del segundo parcial y la calificación del tercer parcial. Después de ello,
se realizará el promedio de las tres calificaciones y ya que se tiene el resultado, se comparará si la
calificación es menor a 70. Entonces, se mostrará un mensaje en pantalla que diga que el alumno ha
reprobado, y si no lo hizo, se mostrará un mensaje en pantalla que diga que el alumno ha aprobado.
Después de analizar y comprender el problema se crea el algoritmo, como el que se muestra en la tabla
6.
12
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
Algoritmo para sumar Descripción Diagrama de flujo Secuencia de los elementos del diagrama de flujo
dos números
PromediaCalificaciones
Entrada: calificación 1
Lee:
Lee: calificación 1
calificacion1
Entrada: calificación 2
Lee:
Lee: calificación 1
calificacion2
13 13
13
Entrada: calificación 3
Lee:
calificacion3
13
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
Termina algoritmo
Fin
Fin
14
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
Ejemplo de una estructura de repetición
Crea un algoritmo y un diagrama de flujo que sume una serie de números. Toma en cuenta las
siguientes consideraciones:
Analiza la siguiente situación: el algoritmo inicia con el establecimiento del contador y del promedio en
cero (para asegurar que ninguna de estas variables tenga un valor). Se continúa con la solicitud al
usuario de que ingrese un número, el cual se almacena. El contador se inicializa (el contador tendrá los
números que se han sumado). A continuación se pide otro número. El contador se incrementa. Se
realiza la suma del número uno y el número dos. Si el resultado es menor a 1000 pedirá otro número.
El contador se incrementa. Este número se sumará al resultado. Si el resultado es menor a 1000,
vuelve a pedir otro número. Se incrementa el contador y se suma el número pensando y estructurando
de esta manera el algoritmo. Podría existir un algoritmo largo e interminable, pero para evitar esta
situación se recomienda utilizar un ciclo que se repita una y otra vez hasta que la condición inicial no se
cumpla.
Al analizar la situación desde una diferente perspectiva, el algoritmo inicia estableciendo el contador y
el promedio en cero (para asegurar que ninguna de estas variables tenga un valor). A continuación, se
crea el ciclo de la siguiente manera:
Mientras (while) el resultado de la suma sea menor a 1000, entonces se realizará lo siguiente:
• Se incrementará el contador (el contador tendrá la cantidad de números que se han sumado).
Al examinar estos dos razonamientos y desarrollando un algoritmo para cada uno de ellos, éstos
quedarían como se muestra en la tabla 8.
15
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
Algoritmo 1 Algoritmo 2
SumaSerieNumeros SumaSerieNumeros
Inicia algoritmo Inicia algoritmo
Establecer suma en cero Establecer suma en cero
Establecer contador en cero Establecer contador en cero
Pedir al usuario que escriba un número while suma < 1000
Entrada: numero1 Pedir al usuario que escriba un
Se incrementa el contador número
if numero<1000 Entrada: numero
Escribe “El resultado es”, numero1;; Se incrementa el contador
Escribe “Se han sumado, los siguientes Se suman los números
números”, contador end while
else Termina algoritmo
Pedir al usuario que escriba un número
Entrada: numero2
Se incrementa el contador
Se suman los números
if suma<1000
Escribe “El resultado es”, numero1;;
Escribe “Se han sumado, los
siguientes números”, contador
else
Pedir al usuario que escriba un
número
Entrada: numero2
Se incrementa el contador
Se suman los números
suma= suma +numero2
if suma<1000
Escribe “El resultado es”, numero1;;
Escribe “Se han sumado, los
siguientes números”, contador
else
Pedir al usuario que escriba un
número
Entrada: numero2
Se incrementa el contador
Se suman los números
if suma<1000
Escribe “El resultado es”, numero1;;
Escribe “Se han sumado, los
siguientes números”, contador
else
16
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
El algoritmo 1 utiliza seis ciclos de estructura de decisión; sin embargo, puede alargarse mucho más,
pues considera que si los primeros seis números son del 1 al 5, no se cumplirá la condición inicial, es
decir, que la suma termine cuando el resultado sea mayor a 1000.
En el algoritmo 2 se contempla desde un inicio que el programa no termine siempre cuando se cumpla
una condición. Al suceder esto, el programa terminará. Observa, además, el número de líneas e
instrucciones que acabas de ahorrar al utilizar una estructura repetitiva.
17
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
Como se ha visto, el algoritmo más pertinente para esta situación es el algoritmo 2 y por eso a
continuación se va a realizar en un diagrama de flujo. Observa la tabla 9.
Algoritmo para Descripción Diagrama de flujo Secuencia de los elementos del diagrama de
sumar dos flujo
números
SumaSerieNume
ros Inicio
Inicia algoritmo
Inicio
Establecer la suma = 0
suma en 0 suma = 0
Establecer contador = 0
contador en cero contador = 0
while suma < While
1000 While suma<100
suma<100 0
0
Pedir al Escribe: Dame
usuario que Escribe: Dame un número
escriba un un número
número
Lee:
Lee: numero numero
Lee:
numero
Termina
Fin
algoritmo
18
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
Referencias
Cairó, O. (2006). Fundamentos de programación. Piensa en C. México: Pearson Educación.
Forouzan, A. (2003). Introducción a la ciencia de la computación, de la manipulación de datos a la
teoría de la computación (L Peralta, trad.). México: Thomson Learning.
Real Academia Española. [RAE]. (s.f.). Diagrama de flujo. En Diccionario de la lengua española (22ª.
ed.). [Versión en línea] Recuperado de http://lema.rae.es/drae/?val=diagrama
19
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.