flowchart TD
Inicio([Inicio]) --> Leer[/Leer A, B/]
Leer --> Sumar[Sumar A + B]
Sumar --> C@{ shape: doc, label: "Mostrar Suma"}
C --> Fin([Fin])
style Inicio fill:#fff,stroke:#333
style Fin fill:#fff,stroke:#333
Unidad 2: Diagramas de Flujo
Diagramas de Flujo
Definición
Un diagrama de flujo es una representación gráfica de un proceso o algoritmo, mostrando los pasos en secuencia mediante símbolos estandarizados. Es útil para describir procesos de forma visual y clara. Generalmente, se dibujan antes de comenzar a programar el código fuente.
A continuación se detallan los símbolos estandarizados:
flowchart TD
T([Inicio / Fin])
style T fill:#fff,stroke:#333,stroke-width:2px
Terminal / Inicio / Fin
- Función: Delimitador.
- Descripción: Indica el punto de inicio o la terminación del proceso. Todo diagrama debe tenerlos.
flowchart TD
IO[/Datos/]
style IO fill:#fff,stroke:#333,stroke-width:2px
Entrada / Salida (Paralelogramo)
- Función: E/S de Datos.
- Descripción: Representa la lectura de datos (recepción) o la salida de información (escritura).
flowchart TD
P[Proceso]
style P fill:#fff,stroke:#333,stroke-width:2px
Proceso (Rectángulo)
- Función: Operación / Acción.
- Descripción: Representa cualquier paso de procesamiento, cálculo matemático o asignación.
flowchart TD
D{¿Condición?}
style D fill:#fff,stroke:#333,stroke-width:2px
Decisión (Rombo)
- Función: Bifurcación Lógica.
- Descripción: Evalúa una condición y divide el flujo en dos caminos (Sí/No, Verdadero/Falso).
Documento / Imprimir
- Función: Salida Impresa.
- Descripción: Tradicionalmente representado como un rectángulo con la base ondulada. Indica la impresión de resultados o generación de documentos físicos.
flowchart TD
A1((A))
style A1 fill:#fff,stroke:#333,stroke-width:2px
Conector (Círculo)
- Función: Enlace.
- Descripción: Conecta partes del diagrama que están en la misma página para evitar cruces complejos.
flowchart TD
A[ ] --> B[ ]
style A fill:none,stroke:none
style B fill:none,stroke:none
Línea de Flujo (Flecha)
- Función: Dirección.
- Descripción: Indica la secuencia lógica y el sentido en que se ejecutan los pasos.
Reglas de sintaxis y construcción
Para asegurar la claridad y validez del diagrama:
- Dirección del Flujo: Debe ser claro y dirigido de arriba hacia abajo o de izquierda a derecha.
- Inicio y Fin: Todo proceso debe empezar en un símbolo de inicio y terminar en un símbolo de fin para asegurar completitud.
- Atomicidad: Evitar procesos demasiado complejos dentro de un solo rectángulo; se deben dividir en subprocesos.
- Decisiones: Las salidas de un rombo suelen ser dos: una para “sí” y otra para “no”.
- Sin Cruces: Las flechas nunca deben cruzarse; usar conectores si es necesario.
- Claridad: Evitar sobrecargar el diagrama con demasiados detalles.
Tipologías de Diagramas
Secuencial
Las operaciones se ejecutan de manera lineal, una tras otra, sin ramificaciones ni repeticiones.
Condicional
Incluye decisiones que bifurcan el flujo del proceso en dos o más caminos basados en una condición booleana (Verdadero/Falso).
flowchart TD
Inicio([Inicio]) --> Leer[/Leer Edad/]
Leer --> Decision{Si Edad > 18?}
Decision -- Sí --> C@{ shape: doc, label: "Permitir acceso"}
Decision -- No --> D@{ shape: doc, label: "Denegar acceso"}
C --> Fin([Fin])
D --> Fin
style Decision fill:#fff,stroke:#333
Repetitivo (Bucle)
Describe un proceso que se repite varias veces hasta que se cumple una condición específica de parada.
flowchart TD
Inicio([Inicio]) --> Init[C = 1]
Init --> Condicion{Mientras C < 6}
Condicion -- Sí --> Print@{ shape: doc, label: "Imprimir C"}
Print --> Inc[C = C + 1]
Inc --> Condicion
Condicion -- No --> FinalDoc@{ shape: doc, label: "Fin"}
FinalDoc --> Fin([Fin])
style Condicion fill:#fff,stroke:#333
Ejercicios de lógica algorítmica
Ejercicios de secuencia
- Promedio de calificaciones: Un estudiante realiza cuatro exámenes durante el semestre, los cuales tienen la misma ponderación. Realice el diagrama de flujo que representen el algoritmo correspondiente para obtener el promedio de las calificaciones obtenidas.
Ejercicios de decisión
- Mayor de dos números: Se desea implementar un algoritmo para determinar cuál de dos valores proporcionados es el mayor. Representarlo diagrama de flujo.
Ejercicios de repetición
- Suma con ciclo “mientras”: Se requiere un algoritmo para obtener la suma de diez números mediante la utilización de un ciclo “Mientras”. Realice el diagrama de flujo.