Escolar Documentos
Profissional Documentos
Cultura Documentos
Diagramas de flujo
Computacion - FA.CE.NA.
Diagrama de Flujo
TEMA5 Diagramas de Flujo. Representacin simblica. Smbolos utilizados. Convenciones. Tcnicas de construccin de diagramas. Estructuras bsicas. Normas para su representacin. Ejemplo.
Computacion - FA.CE.NA.
Diagrama de Flujo
Tanto en la fase de anlisis del problema como durante el diseo del algoritmo, se plantea la necesidad de representar claramente el flujo de operaciones que se han de realizar para su resolucin y el orden en que estas operaciones deber ser ejecutadas. Una vez que el algoritmo est diseado se debe proceder a representarlo mediante algn mtodo de programacin, siendo los ms usuales: diagramas de flujo, pseudocdigo, diagramas N-S o Tablas de decisin. Una vez graficado el algoritmo se procede a su escritura en algn lenguaje de programacin para su posterior ejecucin.
Esta representacin independiza al algoritmo del lenguaje de programacin elegido, permitiendo de esta manera que pueda ser codificado indistintamente en cualquier lenguaje.
Computacion - FA.CE.NA.
Diagrama de Flujo
Las dos herramientas mas utilizadas comunmente para describir algoritmos son: Diagramas de Flujo: son representaciones grficas de secuencias de pasos a realizar. Cada operacion se representa mediante un smbolo normalizado el Instituto Norteamericano de Normalizacion (ANSI - American National Standars Institute). Las lneas de flujo indican el orden de ejecucin. Los diagramas de flujo suelen ser usados solo para representar algoritmos pequeos, ya que abarcan mucho espacio.
Computacion - FA.CE.NA.
Diagrama de Flujo
Pseudocdigos: describen un algoritmo de forma similar a un lenguaje de programacion pero sin su rigidez, de forma ms parecida al lenguaje natural. Presentan la ventaja de ser ms compactos que los diagramas de flujo, ms fciles de escribir para las instrucciones complejas y ms fciles de transferir a un lenguaje de programacin. El pseudocdigo no est regido por ningn estndar. Algunas palabras usadas son LEER/IMPRIMIR para representar las acciones de lectura de datos y salida de datos.
Calcular una altura en pulgadas (1 pulgada=2.54 cm) y pies (1 pie=12 pulgadas), a partir de la altura en centmetros, que se introduce por el teclado. Inicio 1- IMPRIMIR 'Introduce la altura en centimetros: ' 2- LEER: altura 3- CALCULAR pulgadas=altura=2:54 4- CALCULAR pies=pulgadas=12 5- IMPRIMIR 'La altura en pulgadas es: ', pulgadas 6- IMPRIMIR 'La altura en pies es : ', pies Fin
Computacion - FA.CE.NA.
Diagrama de Flujo
El uso de diagramas de flujo como herramienta de programacin tiene beneficios que resumidamente se detallan: Rpida comprensin de las relaciones Se pueden usar como modelos de trabajo para el diseo de nuevos programas
Computacion - FA.CE.NA.
Diagrama de Flujo
5. 2 Representacion Simblica
Los smbolos estndar han sido normalizados por ANSI (American National Standards Institute), IBM, IRAM (Instituto Racionalizador Argentino de Materiales) y son muy variados..
Computacion - FA.CE.NA.
S IM B O L O S
F U N C IO N R e p re se na el F in y C om ien zo d el d ia gra m a E n tra d a /sa lid a - C u alq u ie r tipo d e intro du cc i n d e d a to s e n la m e m o ria de sd e lo s p erif rico s d e en tra da o re gistro de la in fo rm a cin p roc es ad a e n u n p e rif ric o de sa lid a (n o inte res a e l s op o rte ) O p e r a c i n o p r o c e s o - a c c i o n e s a r e a l iz a r ( su m a r d o s n m e ro s , c a l c u l a r r a z cu a dra d a , a sig na c ion e s, e tc.S u br u t i n a - l l a m a d a a u n su b p r o g r a m a qu e e s u n m d u l o i n d e p e n d i e n t e d e l p r o g ra m a p r in c ip a l q u e r e a l iz a u na d e te rm i na d a ta rea y re g re sa a l a s ig u i e n t e in struc ci n d e d o n de fu e lla m ad a . D e ci s i n - o p e r a c i o n e s l g i ca s o d e c o m p ra c i n en t r e d a t o s y e n f u n ci n d e l re su lta d o d e te rm in a cu a l d e lo s do s d is tin tos c am ino s alte rna tivo s d el p rog ra m a se d eb e s e gu ir. N orm a lm e nte tie n e d os re sp u es ta s S I o N O C o n e ctor - en la za d o s p a rte s c ua le sq u ie ra d el d ia g ra m a m e d ia nte un co n e ctor de sa lid a y o tro d e e ntra da . S ie m pre de n tro de la m ism a p g in a L n e a d e F Lu jo - in d ica el se n tido de la e je cu ci n d e la s o pe ra cio n e s C o n e ctor - ide m a l c on e ctor a n te rio r p e ro u sa n do dis titn a s p g in as
Si
No
Computacion - FA.CE.NA.
Diagrama de Flujo
5.3 Tecnicas de construccion de diagramas
5.3.1 Estructuras Bsicas Las estructuras bsicas son las tres siguientes:
Computacion - FA.CE.NA.
Diagrama de Flujo
5.3 Tecnicas de construccion de diagramas
5.3.1 Estructuras Bsicas Secuencia Alternativa o Selectiva Iteracin o Repetitiva Se compone de un grupo de acciones que se realizan todas y en el orden en que estn escritas, sin posibilidad de omitir ninguna de ellas. Las tareas se suceden de forma tal que la salida de una de ellas es la entrada de la siguiente y as sucesivamente hasta el final del proceso.
Computacion - FA.CE.NA.
Diagrama de Flujo
5.3 Tecnicas de construccion de diagramas
5.3.1 Estructuras Bsicas Secuencia Alternativa o Selectiva Iteracin o Repetitiva Permite la seleccin entre dos grupos de acciones dependiendo de que una determinada condicin se cumpla o no. Estas estructuras se utilizan para tomar decisiones lgicas; por ello recibe tambin el nombre de estructuras de decisin o alternativas o condicional. Las condiciones que se especifican usan expresiones lgicas y usan la figura geomtrica en forma de rombo. Estas estructuras pueden ser: Simples o dobles.
Computacion - FA.CE.NA.
Diagrama de Flujo
5.3 Tecnicas de construccion de diagramas
5.3.1 Estructuras Bsicas Secuencia Alternativa o Selectiva Iteracin o Repetitiva Simple: Solo obliga a realizar acciones si se cumple la condicin. El no cumplimiento de la condicin implica que no se realizar ninguna accin. Doble: El cumplimiento o no de la condicin lgica obliga a la ejecucin de diferentes grupos de acciones.
N O
C o n d ic io n
S I
N O
C o n d ic io n
S I
A c c io n
A c c io n
A c c io n
Computacion - FA.CE.NA.
1 2
Diagrama de Flujo
5.3 Tecnicas de construccion de diagramas
5.3.1 Estructuras Bsicas Secuencia Alternativa o Selectiva Iteracin o Repetitiva Estructura de eleccin entre varios casos Este tipo de estructura permite decidir entre varios caminos posibles, en funcin del valor que tome una determinada instruccin.
Computacion - FA.CE.NA.
Diagrama de Flujo
5.3 Tecnicas de construccion de diagramas
5.3.1 Estructuras Bsicas Secuencia Alternativa o Selectiva Iteracin o Repetitiva Permite repetir una o varias instrucciones un nmero determinado de veces que vendr determinado por una condicin. Esta condicin se conoce como condicin de salida. A estos tipos de estructuras se las conoce tambin con el nombre de bucles o rulos y al hecho de repetir la ejecucin de acciones se llama iteracin.
Computacion - FA.CE.NA.
Diagrama de Flujo
5.3 Tecnicas de construccion de diagramas
5.3.1 Estructuras Bsicas Secuencia Alternativa o Selectiva Iteracin o Repetitiva HACER MIENTRAS: Se caracteriza porque la condicin de salida del bucle est situada al comienzo del mismo, es decir las acciones la hace mientras se cumple determinada condicin. Cuando se ejecuta una estructura de este tipo, lo que primero se hace es evaluar la condicin, si la misma es falsa no se realiza ninguna accin. Si la condicin resulta verdadera entonces se ejecuta el cuerpo del bucle (acciones de la Figura). Este mecanismo se repite mientras la condicin sea verdadera.
C o n d ic i o n
N o
Se hace notar que en este tipo de estructura las acciones pueden no ejecutarse ninguna vez.
Computacion - FA.CE.NA.
S i
A c c io n e s
Diagrama de Flujo
5.3 Tecnicas de construccion de diagramas
5.3.1 Estructuras Bsicas Secuencia Alternativa o Selectiva Iteracin o Repetitiva HACER HASTA: Se caracteriza porque la condicin que controla la realizacin de las acciones del bucle est al final del mismo. En este tipo de iteracin las acciones se repiten mientras la condicin sea falsa, lo opuesto a la estructura hacer mientras. Este tipo de bucle se usa para situaciones en las que se desea que un conjunto de instrucciones se ejecute al menos una vez antes de comprobar la condicin de iteracin. La figura muestra la grfica correspondiente.
A c c io n e s
C o n d ic i o n
No
Computacion - FA.CE.NA.
SI
Diagrama de Flujo
5.3 Tecnicas de construccion de diagramas
5.3.1 Estructuras Bsicas Secuencia Alternativa o Selectiva Iteracin o Repetitiva Se puntualizan algunas diferencias entre estas dos estructuras: La estructura mientras termina cuando la condicin es falsa, en cambio la estructura hasta termina cuando la condicin es verdadera. En la estructura hasta el cuerpo del bucle se ejecuta siempre al menos una vez, en cambio en la estructura mientras permite que el cuerpo del bucle nunca se ejecute.
A c c io n e s
C o n d ic i o n
N o
S i
C o n d ic io n
A c c io n e s
No
Computacion - FA.CE.NA.
SI
Diagrama de Flujo
5.4 Normas para su representacin
Para confeccionar un diagrama de flujo, es aconsejable respetar las siguientes reglas: Todo diagrama de flujo debe indicar claramente donde comienza (INICIO o COMENZAR) y donde termina (FIN o PARAR).
El orden en que deben escribirse los smbolos es de arriba abajo y de izquierda a derecha.
La secuencia se indica mediante flechas o lneas de conexin (horizontales / verticales), las cuales deben ser siempre rectas, no se deben cruzar ni deben estar inclinadas.
Computacion - FA.CE.NA.
Diagrama de Flujo
5.4 Normas para su representacin
A todos los smbolos (excepto al INICIO), les debe llegar una lnea de conexin.
De todos los smbolos, excepto FIN y el de DECISIN, debe salir una sola lnea de conexin.
Es aconsejable usar conectores cuando las lneas de conexin entre operaciones no adyacentes son muy largas, pero hay que tener en cuenta que el uso exagerado de conectores dificulta el entendimiento.
Cuando trabajamos con operaciones lgicas recurrir preferentemente a la lgica positiva antes que a la lgica negativa. Es ms claro decir si A = B, en vez de: si no es A <> B
El diagrama de flujo deber ser lo mas claro posible de forma tal que cualquier otro programador pueda seguirlo o usarlo con total facilidad de entendimiento.
Computacion - FA.CE.NA.
Diagrama de Flujo
Ejemplo
Necesitamos hacer nmeros enteros. un programa que multiplique dos
Computacion - FA.CE.NA.
Diagrama de Flujo
Ejemplo
Necesitamos hacer un programa que multiplique dos nmeros enteros. Algoritmo 1) Asignamos el nmero 5 a multiplicando 2) Asignamos el nmero 3 a multiplicador 3) Asignamos el nmero 0 a resultado 4) Asignamos el nmero 0 a indice 5) Sumamos multiplicando y resultado 6) Asignamos a resultado la suma
7) Incrementamos 1 a indice
8) Mientras indice sea menor a multiplicador regresamos al paso 5 de lo contrario continua 9) Muestra el resultado
10) Finalizar
Tenemos que inicializar cada variable de nuestro algoritmo, como se muestra en los Computacion - FA.CE.NA. primeros cuatro pasos.
Diagrama de Flujo
Ejemplo
Necesitamos hacer un programa que multiplique dos nmeros enteros.
Computacion - FA.CE.NA.
Diagrama de Flujo
Ejemplo
Necesitamos hacer nmeros enteros. un programa que multiplique dos
5 3 0 0 5 1 10 15 2 3
Vemos que el ultimo registro de la variable resultado, es 15, por lo que nuestro algoritmo esta funcionando correctamente. Podemos probar con otros nmero.
Computacion - FA.CE.NA.
Diagrama de Flujo
Ejemplo
Necesitamos hacer nmeros enteros. un programa que multiplique dos
Diagramas de flujo Una vez que hemos probado muestro algoritmo con la prueba de escritorio y el resultado es el correcto, podemos seguir a disear el diagrama de flujo. Cada paso de nuestro algoritmo en un procedimiento y se representan con un rectngulo. (Podemos agrupar varios procedimientos en un solo rectngulo, pero no es lo indicado)
Computacion - FA.CE.NA.
Diagrama de Flujo
Ejemplo
Necesitamos hacer un programa que multiplique dos nmeros enteros. 1. Inicio 2. multiplicando = 5 3. multiplicador = 3 4. resultado = 0 5. indice = 0 6. do 7. resultado = resultado + multiplicando 8. indice = indice + 1 9. mientras indice < multiplicador 10. imprime resultado 11. finalizar
Un programa lo podemos dividir en bloques, por ejemplo; de la lnea 6 a la 9 es un bloque, y para identificar cada bloque en el cdigo lo podemos escribir despus de unos espacios y as identificar ciertos procesos. Esto nos sirve para en cdigos muy grandes.
Computacion - FA.CE.NA.
Diagrama de Flujo
Ejemplo
Y finalmente nos pasamos a la computadora y escribimos el cdigo en algun lenguaje de programacion, en nuestro caso C.
Pseudocdigo y Cdigo
El pseudocdigo es el siguiente paso de nuestro programa, y es la representacin (escrita con nuestras propias palabras) del algoritmo.
Computacion - FA.CE.NA.