Diagramas de flujo: DFD

 

DFD es un programa de libre disposición para ayuda al diseño e implementación de algoritmos expresados en diagramas de flujo (DF). Además incorpora opciones para el depurado de los algoritmos, lo que facilita enormemente la localización de los errores de ejecución y lógicos más habituales.

Su utilización es muy sencilla, al tratarse de una herramienta gráfica, y además incluye un menú de ayuda muy completo, por lo que en estas notas nos vamos a centrar en el uso básico de las herramientas de diseño y depuración. El resto de opciones (detalles de sintaxis más avanzados, operadores y funciones disponibles), puede consultarse directamente en la ayuda del programa.

 

1.    Inicio de DFD

La ejecución de DFD presenta la pantalla de inicio siguiente

donde nos fijaremos en  la barra de herramientas.

Aunque puede accederse a todas las opciones que comentaremos a continuación a través del menú, y con atajos de teclado, en estas notas las describiremos a través de los botones correspondientes.

·       El bloque de botones de objetos nos permite seleccionar los distintos elementos (objetos) que vamos a introducir en el DF: sentencias de asignación, selección, iteración, ...

·       El bloque de ejecución permite poner en funcionamiento el algoritmo

·       El bloque de depuración se utiliza, en caso de funcionamiento incorrecto, para detectar errores en la construcción del algoritmo y corregirlos.

·       Los botones de subprogramas permiten introducir funciones definidas por el programador

·       Los restantes botones tienen una funcionalidad similar a la de las restantes aplicaciones Windows: abrir fichero, guardar fichero, cortar, pegar, ... Puede verse su tarea asociada acercando el cursor del ratón (sin hacer clic) al botón correspondiente.

1.1    Un primer ejemplo de diseño con DF

Construiremos un primer ejemplo sencillo de algoritmo para ilustrar las capacidades más básicas de DFD. Dicho algoritmo consistirá en pedir un número al usuario y presentarlo por pantalla.

La operación básica será la de inserción de objetos. En primer lugar, insertaremos una sentencia de salida que le pida al usuario el número que posteriormente se va a imprimir. Para ello pulsamos el botón correspondiente al objeto que se desea insertar

y llevamos el ratón al punto donde vamos a insertarlo. La inserción se realiza pulsando el botón izquierdo, con lo que tendremos una situación como la siguiente:

Los puntos azules indican qué objeto se acaba de insertar. Para introducir en la sentencia de salida el mensaje que queremos imprimir será necesario EDITAR dicho objeto, haciendo doble clic sobre el mismo. De este modo se abre una ventana donde podemos dicho mensaje (por ejemplo 'Buenos días. Dígame un número, por favor').

Como el mensaje es una cadena de caracteres, no debemos olvidarnos de las comillas simples al inicio y final de la misma.

Seguidamente vamos a insertar una sentencia de ENTRADA, para almacenar en una variable el valor del número que nos proporcione el usuario. Para ello pulsaremos el botón correspondiente

y lo insertaremos a continuación de la sentencia de salida anterior. Si editamos el objeto, haciendo doble clic sobre el mismo, aparecerá una pantalla cuyo cuadro de texto nos permitirá darle nombre a la variable donde vamos a guardar el valor (en este ejemplo la variable se va a llamar numero:

Para finalizar, mostraremos al usuario el número que ha introducido, para lo cual insertaremos una nueva sentencia de SALIDA, que editaremos para que muestre el siguiente mensaje:

con lo que el algoritmo tendrá el siguiente aspecto en pantalla:

 

1.2    Un primer ejemplo de ejecución con DF

Tras haber diseñado el algoritmo podemos probar a ejecutarlo, al objeto de detectar posibles errores en él. Para ello utilizaremos los botones de ejecución, y en particular el botón EJECUTAR

que pondrá en marcha el algoritmo.

La primera sentencia en ejecutarse será la de SALIDA, que mostrará en pantalla el mensaje correspondiente:

Seguidamente la de ENTRADA, que nos muestra un cuadro de texto donde introduciremos el valor que queramos darle a la variable (por ejemplo, 123.45):

y, finalmente, la última sentencia de SALIDA:

Cuando el algoritmo finaliza su ejecución sin error se muestra el siguiente mensaje:

Dado que el algoritmo es correcto, procederemos a guardarlo (por ejemplo, con el nombre entradasalida). La opción de guardar es similar a la de cualquier aplicación Windows, por lo que no merece mayor comentario. Únicamente recordar que en general, durante el proceso de elaboración de un algoritmo (que puede ser largo) debemos guardar frecuentemente en disco el diseño, al objeto de prevenir posibles fallos o errores que dejen inutilizado el ordenador y provoquen la pérdida del trabajo realizado.

 

Ejercicio 1: al objeto de ver ejemplos de errores, modificaréis el algoritmo anterior en el siguiente sentido:

1.     errores de sintaxis: Eliminar una de las comillas en alguna de las sentencias de salida y ejecutar el algoritmo.

2.     errores de ejecución: Eliminar la sentencia de entrada (para ello seleccionaréis dicha sentencia haciendo clic sobre el objeto y pulsáis el botón ELIMINAR o la tecla SUPRIMIR). Ejecutar el algoritmo.

Ejercicio 2: diseñar un nuevo algoritmo que pida al usuario dos números a y b y le diga cuál es su suma. Guardar.