3. Diagramas de flujo

Un diagrama de flujo es un dibujo que representa un proceso detallando sus tareas y decisiones. Su finalidad es expresar de manera simple y visual lo que ocurre en un proceso o en un programa, de manera que sea fácil de comprender.

Los diagramas de flujo se dibujan al comienzo de un proyecto para que el programador comprenda mejor lo que quiere hacer, antes de comenzar a escribir el programa de ordenador.

También se dibujan diagramas de flujo para documentar un programa de ordenador una vez terminado, para comunicar a los demás lo que hace el programa de una manera visual y comprensible.

Los diagramas de flujo no se limitan a representar el funcionamiento de los programas, también pueden informarnos a las personas de las tareas que debemos realizar en una situación determinada.

Este es el aspecto que tiene un diagrama de flujo:

../_images/flowchart-estudiar.png

Símbolos

A continuación se presentan los principales símbolos utilizados para dibujar diagramas de flujo.

Comienzo y final

Todos los diagramas de flujo deben tener un símbolo de comienzo y un símbolo de finalización, que se representan con rectángulos redondeados en los extremos.

../_images/flowchart-inicio.png

Símbolos de comienzo y finalización del programa.

Tareas

Las tareas que realiza el programa se representan con rectángulos. Dentro del rectángulo se debe escribir en qué consiste la tarea. Por ejemplo sumar dos números o enviar un mensaje.

../_images/flowchart-tarea.png

Símbolo de tarea.

Entrada y salida de datos

Cuando la tarea consiste en una entrada o salida de datos tal como escribir en la pantalla, pedir que el usuario escriba un texto, imprimir una hoja de papel, etc. En ese caso la tarea tendrá una forma de rectángulo inclinado.

../_images/flowchart-entrada.png

Símbolo de entrada y de salida.

Decisiones

Un símbolo muy especial es el símbolo de decisión. Con este símbolo el programa puede seguir dos caminos distintos, dependiendo de que la condición se cumpla o que no se cumpla.

../_images/flowchart-decision.png

Símbolo de decisión. El camino a seguir depende de la condición.

Flechas de flujo

Todos los símbolos deben ir enlazados entre sí por flechas que indican cómo se realiza la secuencia. Las flechas indican el camino o flujo que sigue el ordenador desde el comienzo hasta la finalización, a través de todas las tareas.

../_images/flowchart-flecha.png

Flecha de unión de las tareas.

Conectores de flechas

Cuando las dos tareas a unir están demasiado lejos o cuando resulta confuso cruzar muchas flechas, entonces se utiliza un circulo con un número, para indicar el comienzo y el final de la flecha.

Cada flecha debe tener un número diferente, de forma que debe haber solo 2 círculos con un mismo número. Un círculo de comienzo y otro de finalización

../_images/flowchart-conector.png

Flecha larga, separada por conectores circulares.

Otros símbolos

Hasta ahora hemos visto los símbolos más importantes. Con ellos se pueden representar todos los diagramas con los que vamos a trabajar. También existen otros símbolos especializados que permiten representar tareas con más detalle, pero utilizarlos solo complicaría más los diagramas de manera que no se usarán.

Diagramas de ejemplo

Diagrama secuencial

En este diagrama las tareas se suceden una a otra, sin ninguna decisión. Este tipo de diagrama es útil para conocer el orden en el que hay que realizar una tarea.

../_images/flowchart-huevo.png

Diagrama de flujo que describe cómo hacer un huevo frito.

Diagrama con condiciones

En este tipo de diagrama, el flujo de la tarea no es secuencial y se desvía dependiendo de las condiciones que se cumplan.

../_images/flowchart-mueve.png

Cómo mover un personaje con el teclado.


Ejercicios

  1. Dibuja un diagrama de flujo que describa las tareas más importantes que tienes que realizar por las mañanas desde que te despiertas hasta que llegas al instituto. Debe haber entre 5 y 8 tareas.

  2. Dibuja el diagrama de flujo de un semáforo que enciende una luz verde, una luz ámbar parpadeando, una luz roja y al final vuelve a comenzar.

  3. Dibuja un diagrama de flujo que explique cómo arreglar una lámpara. Primero debes comprobar si hay luz en la casa. Después comprobarás si la lámpara está conectada. Por último comprobarás que la bombilla no está fundida. Si ninguna solución funciona, llamarás al servicio de reparación.

  4. Dibuja un diagrama de flujo que describa un método para ordenar cartas. Hay dos montones de cartas, uno desordenado y otro ordenado. Primero hay que tomar una carta del montón desordenado. A continuación se compara con la primera carta del montón ordenado. Si la nueva carta es más pequeña, se coloca en el montón ordenado. Si la nueva carta es mayor que la primera carta ordenada, buscamos la siguiente carta del montón ordenado y volvemos a comparar qué carta es mayor.

    Una vez colocada la nueva carta, volvemos a buscar otra carta del montón desordenado. Cuando el montón de cartas desordenado no tenga más cartas, el programa termina.

  5. Dibuja un diagrama de flujo con ayuda del ordenador y con el programa Libre Office Draw. En la siguiente sección puedes descargar una plantilla de Libre Office Draw para dibujar diagramas de flujo.