Diagrama de Flujo
Diagrama de Flujo
Diagrama de Flujo
1. Definición
2. Simbología
Figura Descripción
Comienzo, final:
En esta figura en forma de ovalo, indicaremos el
punto de inicio y finalización del proceso.
Entrada de datos
Cuando la tarea requiera ingresar un dato, tales como
escribir en pantalla o ingresar varios datos
requeridos, utilizaremos esta figura que representa
escritura.
Salida de datos
Para imprimir resultados de operaciones realizadas,
utilizaremos esta figura que representa una salida de
datos desde el proceso.
Tareas
Si queremos realizar una operación o acción. Como
por ejemplo realizar una suma, mandar un mensaje
etc., emplearemos esta figura rectangular. Ya que en
su interior se expresan asignaciones, procesos
aritméticos, cambios de valor de celdas en memoria,
etc.
Decisiones
Utilizado para representar la estructura selectiva
doble si/no. En su interior se almacena una condición.
El programa pude seguir dos caminos distintos,
dependiendo de que la condición se cumpla o no.
1
Operaciones múltiples
Si requerimos realizar distintas tareas tales como un
menú donde podemos escoger uno o varios procesos,
utilizaremos esta figura. En su interior se almacena un
selector, y dependiendo del valor de dicho selector se
sigue por una o varias de sus ramas o caminos
alternativos. (switch key).
Estructuras repetitivas
Los bucles o secuencias repetitivas nos ayudan a
encontrar una determinada operación, como hallar
un numero n en un determinado vector o realizar
múltiples acciones matemáticas, como una factorial.
Cuando deseemos realizar tareas repetitivas
usaremos esta figura, este utiliza en la estructura
selectiva, “si entonces” y en las estructuras
repetitivas; “repetir y mientras”. (for, while, do
while).
Conectores
El circulo lo utilizaremos para expresar conexión de
un mismo proceso que esta separado. Ya sea por que
es muy largo y debemos en otra pagina o porque el
proceso está muy lejos.
Para identificar que es del mismo proceso se lo debe
asignar un mismo signo tanto en el comenzó como en
el final.
Flechas de flujo
Todos los símbolos deben ser enlazados por flechas
que indican como se realiza la secuencia. Las flechas
expresan la dirección del flujo del diagrama, desde su
inicio hasta finalizar todas las tareas.
2
Habiendo entendido estos conceptos básicos sobre lo que representa un diagrama de flujo,
empecemos a analizarlo y emplearlo en la programación estructurada, en el lenguaje de java.
Para empezar a programar, es necesario saber analizar un algoritmo desde su forma gráfica; es
decir, dibujar en un papel los pasos que realizara nuestro algoritmo identificando cada uno de
sus procesos. Para ello nos ayudaremos con el uso del diagrama de flujo.
Ejemplo:
3
Ejemplo:
6. Tipos de datos.
Los datos se clasifican en simples y estructurados. Los datos simples son aquellos que usan una
sola casilla de memoria, estos pueden ser los enteros, reales y caracteres (1, -2, a, B. etc.).
Los datos estructurados ocupan un grupo de casillas en la memoria, es decir que tiene varios
componentes, como arreglos, cadenas de caracteres entre otros. Que los veremos
detalladamente más adelante.
Bien, con estos conceptos básicos pongamos manos a la obra y empecemos a crear nuestros
primeros diagramas. Si algún concepto no te quedo claro, no te preocupes, en el transcurso
podrás reforzarlo y asimilarlo de mejor manera y si faltara atar cabos te sugiero que repases los
conceptos básicos y así no pierdas el hilo.
4
7. Construcción de diagramas secuenciales.
Empecemos con ejemplos de nuestra vida diaria, como, por ejemplo; el lavarse los dientes, la
cara, hacer una taza de café, etc.
El diagrama dependerá de una secuencia a seguir. Como por ejemplo el de ponernos las medias
y el zapato, ello tiene un orden ya que no podemos ponernos primero el zapato y posterior las
medias.
1. Identificar el Proceso:
Aquí tomaremos como tarea el lavarnos la cara. Y en base a esa tarea realizaremos el
algoritmo.
Primeramente, identificaremos lo que necesitamos para lavarnos correctamente la
cara:
• Agua.
• Jabón en barra
• Un lavadero o recipiente.
• Una toalla de cara
3. Ordenar Secuencialmente:
Ya tenemos creado las tareas respectivas, ahora le pondremos un orden secuencial a las
acciones, a este tipo de estructura se le denomina pseudo código.
• inicio:
• Paso 1: Alistar todos los utensilios para lavarnos la cara.
• Paso 2: Llenar el recipiente o lavadero con agua.
• Paso 3: Mojar la cara con agua y jabonar con la barra de jabón.
• Paso 4: Frotar con las palmas de las manos todo el rostro hasta expandir el
jabón.
• Paso 5: Enjuagar la cara con el agua del recipiente o lavadero.
• Paso 6: Retirar el agua con jabón y cambiarla por agua limpia, repetir el paso 4.
• Paso 8: tomar la toalla y secar el rostro por completo.
• Paso 9: Tirar el agua usada y guardar el recipiente jabón y toalla en sus
respectivos lugares
• Fin.
5
4. Dibujar los Símbolos:
Ahora que ya sabemos toda la secuencia que seguirá nuestro algoritmo para lavarnos
nuestra cara, dibujaremos las figuras e ingresaremos cada una de las tareas o procesos
en su respectivo orden.
Inicio
Agua, recipiente,
Jabón, toalla
Llenar el recipiente
con agua.
Tirar el agua y
guardar los utensilios.
6
Rostro limpio.
Fin
Inicio
Agua, recipiente,
Jabón, toalla
Llenar el recipiente
con agua.
7
Tirar el agua y
guardar los utensilios.
Rostro limpio.
Fin
6. Revisar y Validar:
Por último, validamos y revisamos si nuestro algoritmo esta correcto y efectivamente,
si esta correcto. Ya que esos serian los pasos primordiales al momento de lavarnos la
cara.
Si fuéramos más meticulosos deberíamos verificar con las reglas para realizar un algoritmo, pero
en este caso no es necesario ya que es un diagrama simple y los pasos están correctos.
Espero ya estes listo(a) para hacer un diagrama, te dejare un par de ejercicios para que lo puedas
realizar siguiendo los mismos pasos propuestos en el ejemplo anterior.
Ejercicio 1:
Realizar un algoritmo con las labores cotidianas que realizamos para ir al trabajo. El algoritmo
debe tener al menos 5 procesos como mínimo.
Ejercicio 2:
Realizar un algoritmo para lavar la ropa sucia. Considerar que la ropa debe ser seleccionada
según su color y material. El algoritmo debe tener al menos 5 procesos como mínimo.
Hablemos un poco con relación a las variables y las constantes, que son y como identificarlas
para luego aplicarlas. A estos también se los conoce como identificador por que se le asigna un
nombre a un determinado objeto que posteriormente almacenara un valor alfanumérico o una
cadena de caracteres (x = 1, letra = A, día = martes). Sus nombres serán siempre letras o palabras
ya sean abreviadas o completas.
7.2. Variable.
Primeramente, ¿que será una variable en programación? Pues simplemente es una entidad, algo
que no tiene forma definida pero que ocupa un espacio en la memoria. En palabras simples, es
un espacio de memoria que puede recibir un nombre cualquiera y que está sujeto a cambios a
lo largo del programa.
• Edad, que es una variable que cambia entre una y otra persona.
• Precio, es otra variable que cambia según el objeto o servicio.
8
• Nombre, también es otro tipo de variable.
• Los días de la semana es otra variable.
Y así podríamos nombrar infinidad de variables que conocemos, entonces ¿las variables serán
iguales en programación? Pues no es tan simple, ya que existen tres tipos de variables
fundamentales y estas son: las numéricas, de texto y los booleanos.
Las numéricas se usarán para almacenar valores números, ya sean enteros, reales, etc. (edad =
25, precio = 22.5).
Las de texto se usan para almacenar caracteres o cadenas de caracteres (letra = a, mensaje = mi
primer diagrama de flujo).
Los booleanos son aquellos que almacenan valores de condición, es decir, falso o verdadero
(edad = 25 true, edad = juan false).
7.3. Constante.
A diferencia de la variable este tipo de dato no cambia se mantiene estable hasta el final del
programa. Como ejemplo podríamos citar la cedula de identidad de una persona que no cambia,
el sexo de una persona que tampoco cambia, el numero pi que es una constante, la gravedad
que es otra constante, etcétera, etcétera.
El Camel Case es una forma de asignar varios caracteres que quieran expresar algo en concreto.
Es conocida como la técnica camello, representando la joroba del camello por unir dos o más
palabras en una sola, comenzando con mayúsculas la segunda, tercera palabra.
Supongamos que queremos asignarle dos nombres a un identificador que representa en este
caso el costo unitario de un producto x. No podemos hacerlo por separado, es decir, costo
unitario = 15. Esta asignación esta mal, lo correcto sería aplicar Camel Case de la siguiente
manera; costoUnitario = 15.
Ejemplo 2:
Realizar un algoritmo que lea dos números enteros por teclado y los imprima por pantalla.
Bien, como vimos anteriormente es necesario entender el problema planteado. Para ello
volveremos a apoyarnos del punto 2 para resolverlo, pero omitiremos algunos pasos.
9
1. Identificar el proceso.
El proceso es introducir dos números cuales quiera y enviarlos a imprimir por pantalla.
Para eso necesitaremos dos variables:
• N1 = número entero 1.
• N2 = número entero 2.
2. Ordenar secuencialmente.
En este paso usamos el pseudo código.
• Inicio
• Paso 1:
Determinar las dos variables: N1, N2.
• Paso 2:
Introducir el primer número entero:
N1
Introducir el segundo número entero:
N2
• Paso 3:
Imprimir por pantalla N1 y N2.
• Fin
3. Dibujar los símbolos y unirlos con flechas.
inicio
Fin
El paso siguiente seria realizar la validación del algoritmo para determinar si esta o no correcto.
Pero en este ejemplo no es necesario.
Esta seria la forma simplificada del diagrama, pero podríamos ser más detallistas y usaríamos
más información para saber realmente como se podría ver nuestro algoritmo escrito en algún
programa en específico, usando mensajes para cada variable. Se vería casi igual, pero con algún
ligero cambio.
Pero en programación se requiere ahorrar tiempo y memoria por lo que los procesos deben ser
lo mas simples y efectivos posibles.
10
inicio
“Introduzca el primer
numero entero”
N1
,
N2
“Introduzca el segundo
numero entero”
N2
,
N2
N1, N2
Fin
7.5. Operadores.
¿Qué son los operadores? Pues simplemente son aquellos que nos permiten realizar
operaciones, como la suma, resta, multiplicación, división, etcétera.
11
Al usar operadores aritméticos debemos respetar la jerarquía de los operadores que vienen de
izquierda a derecha.
Operador Operación
*, /, % Multiplicación, división, modulo
+, - Suma, resta
Ejemplo 3:
Se desea saber cuanto de cambio debe devolver el vendedor al usuario que compro x
producto.
1. Identificar el proceso.
Este problema nos solicita calcular el cambio total que debe devolver el vendedor al
usuario por la compra de “x” producto. Para ello primeramente planteamos nuestras
variables:
• CP = precio del producto.
• MP = monto pagado por el usuario.
• CD = cambio devuelto.
2. Ordenar secuencialmente.
En este paso usamos el pseudo código.
• Inicio
• Paso 1:
Declarar las variables: CP, MP, CD.
CD = 0;
Nota: cuando tengamos variables que acumularan resultados, es necesario seriarlo, es decir;
inicial esa variable en algún valor, en este caso es cero.
• Paso 2:
Introducir el precio del producto:
CP;
Introducir el monto pagado por el usuario:
MP;
• Paso 3:
Realizar la operación:
CD = MP – CP;
• Paso 5:
Imprimir resultado:
CD;
• Fin
12
3. Dibujar los símbolos y unirlos con flechas.
inicio
CP, MP
CD ← 0
CD
Fin
4. Revisar y validar.
Es este punto realizamos la validación del código por medio de la prueba de escritorio:
CP MP CD Resultado
25.00 40.00 CD = 40 - 25 15.00
Efectivamente se realizó la verificación y si esta correcto por que realiza la operación requerida.
En estos primeros ejemplos usaremos solo variables de carácter entero es decir números
naturales, ya mas adelante usaremos otros tipos de variables.
13
Ejemplo 4:
Se desea saber la suma total de los tres últimos sueldos ganados de un empleado para poder
calcular su aguinaldo correspondiente a la gestión 2023.
1. Identificar el proceso.
Este algoritmo nos solicita calcular la suma de los últimos meses que afectan al cálculo
del aguinaldo, es decir; septiembre, octubre y noviembre. Y después de sacar la suma
debemos dividir entre 12 y multiplicar por el total de meses trabajados, para saber
cuánto de le debe cancelar al trabajador.
• S = septiembre.
• O = octubre.
• N = noviembre.
• ST = suma total.
• A = aguinaldo.
• TM = total de meses trabajados.
2. Ordenar secuencialmente.
En este paso usamos el pseudo código.
• Inicio
• Paso 1:
Declarar las variables: S, O, N, TM.
A=0
ST = 0
Nota: cuando tengamos variables que acumularan resultados, es necesario seriarlo, es decir;
inicial esa variable en algún valor, en este caso es cero.
• Paso 2:
Introducir el sueldo de septiembre:
S;
Introducir el sueldo de octubre:
O;
Introducir el sueldo de noviembre:
N;
Introduzca el total de meses trabajados:
TM;
• Paso 3:
Realizar la sumatoria total:
ST = (S + O + N) / 3;
• Paso 4:
Calcular el aguinaldo:
A = (ST / 12) *TM;
• Paso 5:
Imprimir aguinaldo:
A
• Fin
14
3. Dibujar los símbolos y unirlos con flechas.
inicio
S, O, N, TM
ST ← 0
A←0
ST ← (S + O + N) / 3
A ← (ST / 12) * TM
Fin
4. Revisar y validar.
Es este punto realizamos la validación del código por medio de la prueba de escritorio:
S O N TM ST A Resultado
1500 1200 1800 8 ST = (1500+1800+1200) / 3 A = (1500 / 12) * 8 1000
Ejemplo 5:
15
1. Identificar el proceso.
Este nos solicita calcular el área de un triangulo rectángulo. Para ello primeramente
declararemos las variables que usaremos:
• A = área.
• B = base.
• H = altura.
Nota: un triángulo rectángulo es aquel que forma un ángulo de 90 grados entre sus dos catetos.
2. Ordenar secuencialmente.
En este paso usamos el pseudo código.
• Inicio
• Paso 1:
Declarar las variables: B, H.
A=0
• Paso:
Introducir la base del triángulo:
B;
Introducir la altura del triángulo:
H;
• Paso 3:
Realizar el cálculo del área:
A = (B * H) / 2;
• Paso 5:
Mostrar por pantalla el resultado:
A,
• Fin
3. Dibujar los símbolos y unirlos con flechas.
inicio
B, H
A←0
A ← (B * H) / 2
Fin
16
4. Revisar y validar.
Es este punto realizamos la validación del código por medio de la prueba de escritorio:
B H A Área
20 10 A = (20 * 10) / 2 100
Ejemplo 6:
Realice el diagrama de flujo de un algoritmo que calcule la distancia entre dos puntos,
tomando como datos de entrada las coordenadas de los puntos P1 y P2.
1. Identificar el proceso.
El problema planteado nos solicita calcular la distancia que existe entre dos puntos. Para
ello primeramente definiremos nuestras variables:
2. Ordenar secuencialmente.
En este paso usamos el pseudo código.
• Inicio
• Paso 1:
Declarar las variables: X1, X2, Y1, Y2.
D=0
Nota: cuando tengamos variables que acumularan resultados, es necesario seriarlo, es decir;
inicial esa variable en algún valor, en este caso es cero.
• Paso 2:
Introducir la primera coordenada X:
X1;
Introducir la segunda coordenada X:
X2;
Introducir la primera coordenada Y:
Y1;
Introducir la segunda coordenada Y:
Y2;
• Paso 3:
Realizar el cálculo para determinar la distancia entre los dos puntos:
D = (X2 – X1)^2 + (Y2 – Y1)^2;
• Paso 4:
Mostrar el resultado:
D;
• Fin
17
3. Dibujar los símbolos y unirlos con flechas.
En este punto nos ayudaremos con una gráfica, primeramente:
P2(X2, Y2)
P1(X1, Y1)
X
inicio
D←0
Fin
4. Revisar y validar.
Es este punto realizamos la validación del código por medio de la prueba de escritorio:
X1 X2 Y1 Y2 A Distancia
4 2 4 2 D= (4 – 2)^2 + (4 – 2)^2 2
18
Ejemplo 7:
Un estudiante realiza cuatro exámenes durante el semestre, los cuales tienen la misma
ponderación. Realice el pseudocódigo y el diagrama de flujo que representen el algoritmo
correspondiente para obtener el promedio de las calificaciones obtenidas.
1. Identificar el proceso.
Este algoritmo nos solicita calcular el promedio que debe obtener el estudiante luego
de haber realizado los cuatro exámenes en un semestre. Asignemos las variables:
• PE = primer examen.
• SE = segundo examen.
• TE = tercer examen.
• CE = cuarto examen.
• ST = suma total.
• PR = promedio.
2. Ordenar secuencialmente.
En este paso usamos el pseudo código.
• Inicio
• Paso 1:
Declarar las variables: PE, SE, TE, CE.
ST = 0
PR = 0
Nota: cuando tengamos variables que acumularan resultados, es necesario seriarlo, es decir;
inicial esa variable en algún valor, en este caso es cero.
• Paso 2:
Introducir la primera nota:
PE;
Introducir la segunda nota:
SE;
Introducir la tercera nota:
TE;
Introducir la cuarta nota:
CE;
• Paso 3:
Inicializar las variables que almacenaran resultados:
PR = 0;
• Paso 4:
Calcular el promedio final de los exámenes:
PR = (PE + SE + TE + CE) / 4;
• Paso 5:
Imprimir el resultado:
PR;
• Fin
19
3. Dibujar los símbolos y unirlos con flechas.
inicio
PR ← 0
PR ← (PE + SE + TE + CE) / 4
PR
Fin
4. Revisar y validar.
Es este punto realizamos la validación del código por medio de la prueba de escritorio.
Considerando que es sobre 25 puntos cada examen:
PE SE TE CE PR Promedio
18 20 25 21 PR = (18 + 20 + 25 + 21) / 4 21
20