Representación visual de soluciones: diagramas de flujo y tablas como apoyo al pensamiento computacional

Capítulo 7

Tiempo estimado de lectura: 8 minutos

+ Ejercicio

¿Por qué representar soluciones de forma visual?

Cuando un algoritmo se escribe solo en texto, es fácil perder de vista el “mapa” completo: qué pasa primero, dónde hay alternativas, qué pasos se repiten y en qué punto termina el proceso. Las representaciones visuales (diagramas de flujo, tablas y listas estructuradas) funcionan como un apoyo externo para pensar con claridad: permiten detectar huecos, ambigüedades y caminos que no habías considerado.

En este capítulo aprenderás a usar tres herramientas simples y complementarias:

  • Diagramas de flujo: para ver el recorrido del proceso y sus bifurcaciones.
  • Tablas de casos: para comprobar decisiones con entradas/salidas (especialmente útil en condiciones).
  • Listas estructuradas: para ordenar pasos y preparar la traducción a diagrama o a texto.

Diagramas de flujo: símbolos mínimos y cómo leerlos

Un diagrama de flujo representa un algoritmo como un recorrido con flechas. No necesitas muchos símbolos para empezar; con tres basta para la mayoría de casos cotidianos:

  • Inicio/Fin (óvalo): marca el punto de arranque y el de cierre.
  • Proceso (rectángulo): una acción o instrucción (hacer algo).
  • Decisión (rombo): una pregunta con al menos dos salidas (por ejemplo, Sí/No).

Reglas prácticas de lectura:

  • Sigue las flechas en orden.
  • Cada rombo debe tener salidas etiquetadas (por ejemplo, “Sí” y “No”).
  • Si una flecha vuelve a un paso anterior, tienes un bucle (repetición).
  • Si un rombo abre dos rutas que luego se juntan, tienes caminos alternativos (ramificación).

Plantilla textual para describir un diagrama

Para que el diagrama sea fácil de convertir a texto (y viceversa), usa frases consistentes:

Continúa en nuestra aplicación.
  • Escuche el audio con la pantalla apagada.
  • Obtenga un certificado al finalizar.
  • ¡Más de 5000 cursos para que explores!
O continúa leyendo más abajo...
Download App

Descargar la aplicación

  • Proceso: “Hacer X”.
  • Decisión: “¿Se cumple Y?” con salidas “Sí/No”.
  • Bucle: “Mientras se cumpla Y, repetir…”.

Listas estructuradas: el puente entre texto y diagrama

Antes de dibujar, conviene escribir una lista estructurada. Es más precisa que un párrafo y más rápida que un diagrama. Un formato útil es:

  • Pasos numerados para acciones.
  • Subpasos con sangría.
  • Decisiones con ramas “Si… entonces…” / “Si no…”.
  • Repeticiones con “Mientras…” o “Repetir hasta…”.

Ejemplo de plantilla:

1) Hacer A
2) ¿Condición C?
   - Sí: Hacer B
   - No: Hacer D
3) Mientras Condición M:
   - Hacer E
4) Fin

Esta lista ya contiene la estructura lógica necesaria para dibujar: cada paso es un rectángulo, cada pregunta es un rombo y cada “mientras” se convierte en una flecha que regresa.

Tablas de casos: comprobar decisiones sin dibujar

Las tablas de casos sirven para validar decisiones: enumeras combinaciones de condiciones y defines qué acción corresponde. Son especialmente útiles cuando:

  • Hay varias condiciones que afectan la decisión.
  • Quieres verificar que no falta ningún caso.
  • Necesitas explicar por qué el algoritmo elige una ruta u otra.

Ejemplo: tabla de casos para “¿Puedo iniciar el lavado?”

CondiciónValorAcción
Hay ropa en el cestoNoTerminar (no hay nada que lavar)
Hay ropa en el cestoContinuar
La lavadora está libreNoEsperar o reintentar más tarde
La lavadora está libreCargar ropa

Nota: una tabla puede ser tan detallada como necesites. Si hay dos o tres condiciones, puedes hacer una tabla por pasos (como arriba) o una tabla combinada (todas las condiciones en una fila) para ver todas las combinaciones.

Guía paso a paso: construir un diagrama de flujo desde un algoritmo cotidiano (lavar ropa)

1) Escribe el algoritmo en texto simple (borrador)

Primero, describe el proceso como lo contarías a alguien, sin preocuparte por símbolos:

“Reúne la ropa, separa por color si hace falta, mete una carga en la lavadora, añade detergente, elige programa y empieza. Cuando termine, saca la ropa. Si aún queda ropa por lavar, repite con otra carga. Si no, termina.”

2) Convierte el borrador en lista estructurada (más precisa)

1) Reunir la ropa para lavar
2) ¿Es necesario separar por color/tejido?
   - Sí: Separar en montones
   - No: Continuar
3) Preparar una carga
4) Cargar lavadora
5) Añadir detergente
6) Seleccionar programa
7) Iniciar lavado
8) Esperar a que termine
9) Sacar ropa
10) ¿Queda ropa por lavar?
    - Sí: Volver a (3)
    - No: Fin

Aquí ya aparecen claramente: una decisión (paso 2), otra decisión (paso 10) y un bucle (volver a 3).

3) Traduce la lista a diagrama de flujo (mapeo de símbolos)

Usa esta traducción directa:

  • “Inicio” y “Fin” → óvalos.
  • Pasos de acción (reunir, cargar, añadir, seleccionar, iniciar, sacar) → rectángulos.
  • Preguntas (¿es necesario…?, ¿queda ropa…?) → rombos con salidas “Sí/No”.
  • “Volver a (3)” → flecha de retorno (bucle).

Representación en texto (para que puedas dibujarlo en papel o en una herramienta):

[Inicio]
  ↓
(Proceso) Reunir la ropa
  ↓
(Decisión) ¿Separar por color/tejido?
  ├─ Sí → (Proceso) Separar en montones → ↓
  └─ No ───────────────────────────────→ ↓
(Proceso) Preparar una carga
  ↓
(Proceso) Cargar lavadora
  ↓
(Proceso) Añadir detergente
  ↓
(Proceso) Seleccionar programa
  ↓
(Proceso) Iniciar lavado
  ↓
(Proceso) Esperar a que termine
  ↓
(Proceso) Sacar ropa
  ↓
(Decisión) ¿Queda ropa por lavar?
  ├─ Sí → (Flecha de retorno) a “Preparar una carga”
  └─ No → [Fin]

Si lo dibujas, procura que las flechas no se crucen demasiado: coloca el bucle “Sí” hacia un lado y vuelve al paso 3 con una flecha clara.

De texto a diagrama y de diagrama a texto (traducción en ambos sentidos)

Cómo pasar de texto a diagrama (método rápido)

  • Subraya verbos (acciones): serán procesos.
  • Encierra preguntas (¿…?): serán decisiones.
  • Busca palabras de repetición (“otra vez”, “hasta”, “mientras”, “por cada”): probablemente hay un bucle.
  • Define el inicio y el fin: aunque el texto no lo diga, el diagrama lo necesita.

Cómo pasar de diagrama a texto (método verificable)

Recorre el diagrama siguiendo flechas y escribe una instrucción por bloque:

  • Óvalo de inicio: “Comenzar”.
  • Rectángulo: “Hacer X”.
  • Rombo: “Si se cumple Y, entonces…; si no, entonces…”.
  • Flecha de retorno: “Volver a…” o “Repetir desde…”.

Ejemplo (fragmento del diagrama anterior):

Comenzar.
Reunir la ropa.
Si es necesario separar por color/tejido, entonces separar en montones; si no, continuar.
Preparar una carga.
...
Si queda ropa por lavar, entonces volver a preparar una carga; si no, terminar.

Este texto “de vuelta” es útil para comprobar si el diagrama se entiende sin verlo.

Identificar caminos alternativos y bucles en un diagrama

Caminos alternativos (ramas)

Un camino alternativo aparece cuando una decisión abre dos (o más) rutas. Para revisarlo:

  • Verifica que cada salida del rombo lleve a un paso válido (no a “nada”).
  • Comprueba si las ramas se vuelven a unir más adelante o si terminan en finales distintos.
  • Pregunta: “¿Qué pasa si la respuesta es No?” (muchos diagramas fallan aquí).

En “¿Separar por color/tejido?”, ambas ramas vuelven al mismo punto: “Preparar una carga”. Eso indica que separar es opcional, pero el proceso general continúa igual.

Bucles (repetición)

Un bucle se ve como una flecha que regresa a un paso anterior. Para revisarlo:

  • Identifica la condición de salida: ¿qué hace que el bucle termine?
  • Confirma que dentro del bucle ocurre algo que pueda cambiar la condición (si no cambia, el bucle podría ser infinito).
  • Etiqueta claramente la ruta de retorno para que no se confunda con un atajo.

En “¿Queda ropa por lavar?”, la condición cambia porque al completar una carga, queda menos ropa pendiente. Por eso el bucle tiene sentido.

Ejercicio de revisión: comparar dos representaciones del mismo algoritmo

Vas a comparar dos formas de representar el mismo proceso (“preparar una bebida caliente”) y evaluar cuál comunica mejor y por qué.

Representación A: lista estructurada

1) Elegir bebida: té o café
2) Calentar agua
3) Si es té:
   3.1) Colocar bolsa/hojas en taza
   3.2) Verter agua caliente
   3.3) Esperar 3–5 minutos
4) Si es café:
   4.1) Colocar café (instantáneo o filtro)
   4.2) Verter agua caliente
   4.3) Si es de filtro: esperar a que termine de pasar
5) (Opcional) Añadir azúcar/leche
6) Servir

Representación B: diagrama de flujo en texto

[Inicio]
  ↓
(Proceso) Elegir bebida
  ↓
(Proceso) Calentar agua
  ↓
(Decisión) ¿Es té?
  ├─ Sí → (Proceso) Colocar té en taza
  │       ↓
  │     (Proceso) Verter agua
  │       ↓
  │     (Proceso) Esperar 3–5 min
  │       ↓
  │     ───────────────────────────┐
  └─ No → (Proceso) Preparar café   │
          ↓                         │
        (Decisión) ¿Café de filtro? │
          ├─ Sí → (Proceso) Esperar que termine
          └─ No → (Proceso) Continuar
                    ↓
          ──────────────────────────┘
  ↓
(Decisión) ¿Añadir azúcar/leche?
  ├─ Sí → (Proceso) Añadir
  └─ No → (Proceso) Continuar
  ↓
(Proceso) Servir
  ↓
[Fin]

Preguntas para evaluar cuál comunica mejor

  • Claridad de rutas: ¿se ve rápidamente qué pasa si eliges té vs café?
  • Visibilidad de decisiones: ¿las preguntas importantes están destacadas?
  • Facilidad para detectar pasos faltantes: ¿notas si falta “verter agua” en alguna rama?
  • Revisión de consistencia: ¿ambas ramas llegan a “servir” sin contradicciones?
  • Audiencia: ¿para quién es más útil cada formato (alguien que ejecuta el proceso vs alguien que lo revisa)?

Actividad: elige una de las dos representaciones como “mejor” para explicar el proceso a una persona que nunca lo ha hecho. Escribe 2 razones concretas basadas en las preguntas anteriores y señala 1 mejora que harías a la representación que elegiste (por ejemplo, renombrar una decisión, añadir un paso, o hacer explícito un retorno).

Ahora responde el ejercicio sobre el contenido:

Al revisar un diagrama de flujo, ¿qué indicio visual confirma que existe un bucle (repetición) y qué debes verificar para evitar que sea infinito?

¡Tienes razón! Felicitaciones, ahora pasa a la página siguiente.

¡Tú error! Inténtalo de nuevo.

Un bucle se identifica cuando una flecha vuelve a un paso anterior. Para que no sea infinito, debe haber una condición de salida clara y alguna acción dentro del bucle que pueda cambiar esa condición.

Siguiente capítulo

Pruebas y depuración mental: encontrar errores antes del código con pensamiento computacional

Arrow Right Icon
Portada de libro electrónico gratuitaPensamiento computacional desde cero: cómo pensar como programador
78%

Pensamiento computacional desde cero: cómo pensar como programador

Nuevo curso

9 páginas

Descarga la aplicación para obtener una certificación gratuita y escuchar cursos en segundo plano, incluso con la pantalla apagada.