Está en la página 1de 39

DIAGRAMAS DE FLUJO

Definición
• Se utilizan para representar en forma
gráfica un proceso.
• Existe una simbología especial para
representar los pasos del proceso.
• Los símbolos se conectan por medio de
flechas para indicar la secuencia de la
operación.
Características y ventajas de los
Diagramas de Flujo

• Puede haber uno ó más caminos que permiten


llegar a una solución (finalización del algoritmo).
• Existe un único inicio del proceso.
• Existe un único punto de fin.
Ventajas
• Favorecen la comprensión del proceso a través de mostrarlo como
un dibujo. El cerebro humano reconoce fácilmente los dibujos. Un
buen diagrama de flujo reemplaza varias páginas de texto.
• Permiten identificar los problemas y las oportunidades de mejora
del proceso. Se identifican los pasos redundantes, los flujos de los
re-procesos , los conflictos de autoridad, las responsabilidades, los
cuellos de botella, y los puntos de decisión.
• Muestran las interfaces cliente-proveedor y las transacciones que
en ellas se realizan, facilitando a los empleados el análisis de las
mismas.
• Son una excelente herramienta para capacitar a los nuevos
empleados y también a los que desarrollan la tarea, cuando se
realizan mejoras en el proceso
Símbolos

                   Inicio o fin del programa

                   Pasos, procesos o líneas de instrucción de programa de computo

                   Operaciones de entrada y salida

                   Toma de decisiones y selección de uno de los dos caminos

                   Conector para unir el flujo a otra parte del diagrama


Conector de pagina
                  
Líneas de flujo
                  
Anotación
                  
Display, para mostrar datos
                  
Envía datos a la impresora
                  
Reglas para los Diagramas de
Flujo
• Los Diagramas de flujo deben escribirse de arriba hacia abajo, y/o de
izquierda a derecha.
• Los símbolos se unen con líneas, las cuales tienen en la punta una
flecha que indica la dirección que fluye la información procesos, se
deben de utilizar solamente líneas de flujo horizontal o verticales
(nunca diagonales).
• Se debe evitar el cruce de líneas, para lo cual se quisiera separar el
flujo del diagrama a un sitio distinto, se pudiera realizar utilizando los
conectores. Se debe tener en cuenta que solo se van a utilizar
conectores cuando sea estrictamente necesario.
• No deben quedar líneas de flujo sin conectar
• Todo texto escrito dentro de un símbolo debe ser legible, preciso,
evitando el uso de muchas palabras.
• Todos los símbolos pueden tener más de una línea de entrada
• Solo los símbolos de decisión pueden y deben tener mas de una línea
de flujo de salida.
Diagrama de flujo que encuentra la suma de los primeros
50 números naturales

                                                    
Algoritmos
• Un algoritmo es una lista ordenada y finita de
operaciones que permite hallar la solución a un
problema. Dado un estado inicial y una entrada,
a través de pasos sucesivos y bien definidos se
llega a un estado final, obteniendo una solución.
• Los algoritmos pueden ser expresados de
muchas maneras, incluyendo: lenguaje natural,
pseudocódigo, diagramas de flujo y lenguajes
de programación.
Etapa de Análisis
• Para resolver un problema mediante un programa de
cómputo, el programador necesita de la experiencia del
experto del dominio para entender el problema.
• Para llegar a una solución satisfactoria es necesario
que:
– El problema esté bien definido con el máximo detalle
– Las especificaciones de las entradas y salidas del
problema, deben ser descritas también en detalle, por
ejemplo:
¿Qué datos son necesarios para resolver el problema?
¿Qué información debe proporcionar la resolución del problema?
Etapa de Diseño: acciones
Acciones básicas para el diseño de un algoritmo:

• Aritmético – lógicas: Operaciones que, a partir de unos


determinados datos, realizan un cálculo aritmético
(suma, resta, multiplicación,...) o un cálculo lógico
(mayor que, menor que, igual que,...).Las primeras
devuelven un valor numérico (4, -5.67,...) y las segundas
un valor lógico (verdadero o falso).
• De entrada – salida: Acciones que permiten capturar
datos para su procesamiento (entrada) y guardar los
resultados del procesamiento y poderlos desplegar al
usuario (salida).
Etapa de Diseño: secuencia de las
acciones
• En un algoritmo es necesario determinar
el orden en el que se deben ejecutar
acciones.
Acción 1;
Acción 2;
...
Acción n;
Etapa de Diseño: condición
• Cuando en un algoritmo se quiere indicar que
cierta acción sólo se debe ejecutar bajo cierta
condición se indica del siguiente modo:
Si Condición Entonces
Acción;
Fin

Sólo si la Condición es verdadera se ejecutará la


Acción.
Etapa de Diseño: iteración
• Cuando una acción o conjunto de
acciones debe ejecutarse varias veces se
recurre a una estructura iterativa o bucle.
En este tipo de estructuras se necesita
una condición que determine cuando
terminan las iteraciones.
Operadores Aritméticos
Operador Aritmético Operación
* Multiplicación
/ División
+ Suma
- Resta
mod Módulo (residuo)
Jerarquía de los operadores
aritméticos
1. Si una expresión contiene
subexpresiones entre paréntesis, éstas
se evalúan primero. (1ero)
2. Mayor jerarquía: *, /, mod (2do)
3. Siguiente nivel: +, -
4. La jerarquía se aplica de izquierda a
derecha.
Operadores lógicos
• Las expresiones lógicas o booleanas utilizan operadores
lógicos o relacionales. El resultado de estas
expresiones es de verdadero ó falso y se usan en
condiciones e iteraciones.
• Operadores lógicos: NOT, AND, OR, jerarquía: (4to)

• Operadores relacionales: = <>, <, > <=, >=, todos éstos


están en el mismo nivel de jerarquía. (3ero).

Nota: Las prioridades de los operadores pueden variar


dependiendo del lenguaje de programación.
Construcción de Diagrama de Flujo
Ejemplos:
Dado el expediente y las 4 calificaciones de un alumno
obtenidas el semestre anterior, construir un diagrama
de flujo que imprima el expediente del alumno y el
promedio de sus calificaciones

Solución: La solución deberá estar formada por los


siguientes puntos:
1) Datos y su descripción,
2) diagrama de flujo y explicación de cada elemento del
diagrama (función que lleva a cabo)
3) Seguimiento del algoritmo (prueba de escritorio)
Solución:
Datos y variables
exp, es una variable de tipo entero que
representa el expediente del alumno
cal1, cal2, cal3 y cal4, son variables de tipo
real que representan las calificaciones del
alumno
prom, para guardar el resultado del
promedio de las 4 calificaciones.
Solución:
Diagrama de Flujo

INICIO

exp, cal1, cal2, Lectura/ingreso de expediente y c


cal3, cal4 calificaciones

Almacena en la variable prom el


prom = (cal1 + cal + cal3 + cal4)/4
promedio de las calificaciones

exp, prom Despliega/imprime el expediente y el


promedio
Solución:
prueba de escritorio

DATOS RESULTADOS

NUMERO DE
CORRIDA exp cal1 cal2 cal3 cal4 exp prom

1 306782 8 3.5 4 5 306782 5.13

2 548621 6 2 6 7 548621 5.25

3 528521 7.4 8 7 8.8 528521 7.80

4 521789 5 9 8.5 5 521789 6.88

5 412676 9 10 9 9.6 412676 9.40


Construcción de Diagrama de Flujo
Ejercicios:
1) Construir el diagrama de flujo para que dados la base y la altura de un
triángulo calcule e imprima su superficie
2) Una persona anota su nombre, su peso y su altura en libras y pies
respectivamente, escribir un diagrama de flujo que escriba el nombre de
la persona, su peso en kg y su altura en m.
3) Escribir un diagrama de flujo que calcule la distancia entre dos puntos, dado
como datos las coordenadas de los puntos A y B.
D = \/(x1 - x2)2 + (y1 – y2 )2
Construcción de Diagrama de Flujo
Ejercicios:
Utilización de una estructura selectiva simple:

no
condición
si

4) Construir un diagrama de flujo que pida la calificación de un alumno, si la


calificación es igual ó mayor a 6, que despliegue un mensaje de
“aprobado”.

5) Dado como dato el sueldo de un empleado, si su sueldo es menor ó igual a


$10,000.00 se le aplica un aumento del 30%. Imprima el nuevo sueldo del
trabajador
Construcción de Diagrama de Flujo
Ejercicios:
Utilización de una estructura selectiva doble:

si (verdadera) no (falsa)
condición
si instrucción2
instrucción1

6) Construir un diagrama de flujo que pida la calificación de un alumno, si la


calificación es igual ó mayor a 6, que despliegue un mensaje de
“aprobado”, en caso contrario que imprima “reprobado”.
7) Dado como dato el sueldo de un empleado, si su sueldo es menor ó igual a
$10,000.00 se le aplica un aumento del 30%, si es mayor solo se le da el
10%. Imprima el nuevo sueldo del trabajador
Construcción de Diagrama de Flujo
Estructura de selección múltiple

condición1
si instrucción1
no
si
condición2 instrucción2

no

si
condiciónN instrucciónN

no

instrucciónX
Estructura de selección múltiple:
Ejercicios
8) En una empresa se tienen 3 niveles de puestos: si el empleado es
nivel 1, se le incrementa a su salario un 15%, si es nivel 2 se le
incrementa un 20% y si es nivel 3 un 25%, construir un diagrama de
flujo para que calcule el nuevo sueldo del empleado y lo imprima.

9) De acuerdo con el último dígito de la placa permanente de


circulación, el período en que deberá verificar es:
5 ó 6 Julio y Agosto
7 ó 8 Agosto y Septiembre
3 ó 4 Septiembre y Octubre
1 ó 2 Octubre y Noviembre
9 ó 0 Noviembre y Diciembre
Construir el diagrama de flujo para que dependiendo del dígito que
proporcione el usuario (correspondiente al último dígito de su
placa), se impriman los meses en los que puede verificar.
Estructura de selección múltiple:
Ejercicios
10) En una tienda se hacen descuentos dependiendo de la
cantidad que compre el cliente:
Si compra menos de $500.00, no hay descuento.
Si compra entre $500.00 y $1000.00, se le da un
descuento del 3%
Si compra más de $1000.00 se le da un descuento de 5%.
Construir el diagrama de flujo para que dependiendo de la
cantidad de la compra, imprima cuánto es lo que debe
pagar.
Estructura de control anidadas
• Esta estructura se presenta cuando en alguna
de las alternativas (si, no) de un rombo en un
diagrama de flujo tenemos a su vez otra
estructura de control.
• Por ejemplo:
Construir un diagrama de flujo tal que dado como
dato un número entero, determine e imprima si
el número dado es positivo negativo o nulo
Solución:
Dato: num variable entera que representa el
número que se ingresa
Diagrama de flujo
inicio

num

si no
num > 0

si no
num = 0
positivo

nulo negativo

fin
Prueba de escritorio
DATO
NUM. DE
CORRIDA NUM RESULTADO

1 5 Positivo

2 2 Positivo

3 0 Nulo

4 -7 Negativo

5 -15 Negativo
Estructuras de control repetitivas
• En algunos algoritmos sus instrucciones se
deben ejecutar más de una vez, las
instrucciones son las mismas pero los datos van
variando. El conjunto de instrucciones que se
ejecuta repetidamente se llama ciclo
• Todo ciclo debe tener una forma de terminarse,
por lo que en cada vuelta se debe evaluar una
condición para saber si se continúa o no.
• En los ciclos se puede especificar cuántas
veces debe repetirse
CICLO FOR
• Esta estructura es muy útil para repetir un
número de veces una instrucción. Por
ejemplo cuando queremos calcular la
nómina total de la empresa, tenemos que
sumar los sueldos de los N empleados de
la misma. Cuando necesitamos obtener el
promedio de calificaciones de un curso,
debemos sumar las N calificaciones de los
alumnos y dividir esta suma entre N.
Diagrama de flujo: ciclo for

Inicialización de Representación del ciclo


variables para el ciclo en el diagrama de flujo

Condición de true
prueba Instrucción x

false
Esta condición es la que se
Instrucción y prueba para ver si se continúa
con el ciclo o si se sale del ciclo
a la siguiente instrucción
CICLO while
• Esta estructura es muy útil principalmente
cuando se no se conoce de antemano el
número de veces que se va a repetir el
ciclo. Por ejemplo vamos a obtener el
total de una serie de gastos pero no
sabemos cuántos son; o también cuando
vamos a sacar un promedio de
calificaciones pero no sabemos cuántos
alumnos son.
Diagrama de flujo: ciclo while

Representación del ciclo


Instrucción x
en el diagrama de flujo

true
Condición de
prueba

false
Esta condición es la que se
Instrucción y prueba para ver si se continúa
con el ciclo o se pasa a la
siguiente instrucción fuera del
ciclo
CICLO do-while
• Igual que la estructura while es muy útil
principalmente cuando se no se conoce
de antemano el número de veces que se
va a repetir el ciclo. La diferencia es que
por lo menos se ejecuta una vez la
instrucción, ya que la condición se prueba
después.
Diagrama de flujo: ciclo do-while

Representación del ciclo


Instrucción x
en el diagrama de flujo

true
Condición de
prueba

false
Esta condición es la que se
Instrucción y prueba para ver si se continúa
con el ciclo o se pasa a la
siguiente instrucción fuera del
ciclo
Tarea
1) Los impuestos que se deben pagar por ciertos artículos es en
base al siguiente criterio: los primeros $100 USD no causan
impuestos, los siguientes $80 USD tienen 12% de impuesto y el
resto tiene 15% de impuesto. Pero si el artículo cuesta más de
$1000 USD se cobra un 20% parejo.
2) Se proporcionan como datos 3 números reales, identifique cuál
es el mayor. Considerar que todos los números son diferentes.
3) Hacer un diagrama de flujo que permita calcular el costo de una
llamada telefónica dependiendo del número de minutos y de la
zona a la que se marcó, de acuerdo con el siguiente criterio:
• zona 1: $2.00 el minuto
• zona 2: $5.00 el minuto
• Zona 3: $10.00 el minuto
Si se proporciona una zona inválida, por ejemplo 4, entonces se
debe desplegar un mensaje que diga “zona no válida”
Tarea cont.
2) De un grupo de N alumnos necesitamos
obtener el número de expediente y el promedio
más alto.
3) Calcular el término número 160 de la secuencia
de Fibonacci
4) Un entero positivo N es primo si los únicos
enteros positivos que lo dividen son 1 y N.
Construir un diagrama de flujo que lea un
número num y que cuente todos lo números
primos menores que num.

También podría gustarte