Pensamiento computacional como forma de pensar como programador

Capítulo 1

Tiempo estimado de lectura: 6 minutos

+ Ejercicio

Qué es el pensamiento computacional (en la práctica)

El pensamiento computacional es un enfoque para convertir una situación real (a veces confusa) en un proceso claro y verificable antes de escribir código. No se trata de “pensar en computadoras”, sino de pensar como programador: definir qué se quiere lograr, qué información entra, qué resultado debe salir, qué reglas no se pueden romper y qué pasos se pueden repetir o automatizar.

Cuando lo aplicas, dejas de describir un problema como “esto está hecho un lío” y lo describes como: “con estas entradas, bajo estas restricciones, debo producir estas salidas y cumplir estos criterios de éxito”.

Separar piezas: problema, objetivo, restricciones, entradas y salidas

En programación, muchas confusiones vienen de mezclar conceptos. Esta separación te obliga a aclarar el encargo.

ElementoQué significaPregunta útil
ProblemaLa situación actual que no satisface lo que necesitas¿Qué está pasando hoy que no funciona?
ObjetivoEl estado deseado (lo que quieres lograr)¿Cómo se ve el “éxito” al final?
RestriccionesReglas, límites o condiciones que no puedes violar¿Qué no se puede hacer? ¿Qué límites hay?
EntradasInformación disponible para tomar decisiones¿Qué datos tengo o puedo obtener?
SalidasResultados que produces (plan, lista, decisión, acción)¿Qué entrego exactamente?

Ejemplo 1: Organizar una mañana

  • Problema: Salgo tarde o se me olvidan cosas.
  • Objetivo: Estar listo para salir a las 8:10 con todo lo necesario.
  • Restricciones: Ducha máximo 10 min; desayuno 15 min; a las 7:50 debo estar vestido; no puedo hacer ruido antes de las 7:00.
  • Entradas: Hora actual, clima, primera actividad del día, ropa disponible, tiempo de traslado, lista de pendientes.
  • Salidas: Un plan con horarios (qué hacer a qué hora) y una lista de cosas para llevar.

Ejemplo 2: Preparar una comida

  • Problema: No sé qué cocinar con lo que hay y termino pidiendo comida.
  • Objetivo: Tener una comida lista en 30 minutos.
  • Restricciones: Sin horno; máximo 30 min; usar ingredientes disponibles; evitar un ingrediente (por alergia o preferencia).
  • Entradas: Ingredientes, utensilios, tiempo, número de porciones, preferencias.
  • Salidas: Receta elegida + pasos ordenados + lista de preparación (lavar, cortar, cocer).

Ejemplo 3: Planear un recado

  • Problema: Hago vueltas desordenadas y pierdo tiempo.
  • Objetivo: Completar 3 recados y volver a casa antes de las 18:00.
  • Restricciones: Una tienda cierra a las 17:30; presupuesto máximo; solo transporte público; debo pasar por un punto específico.
  • Entradas: Direcciones, horarios, tiempo de traslado, dinero disponible, lista de recados.
  • Salidas: Ruta ordenada (qué lugar primero, segundo, tercero) y horario estimado.

Cómo piensa un programador: convertir lo real en un proceso

Una vez separadas las piezas, el siguiente paso es describir el proceso: qué decisiones aparecen y qué pasos se repiten. Esto te prepara para escribir instrucciones claras (y luego, si corresponde, código).

Decisiones (condiciones)

Son puntos donde el camino cambia según una entrada. Se expresan como “si pasa X, entonces hago Y; si no, hago Z”.

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

  • Si llueve, llevo paraguas; si no, no.
  • Si tengo menos de 20 minutos, elijo una receta rápida; si no, una más elaborada.
  • Si la tienda A está cerrada, cambio el orden y voy primero a la tienda B.

Repeticiones (rutinas)

Son acciones que se repiten hasta cumplir una condición. Se expresan como “repetir hasta…”.

  • Repetir: revisar bolsillos y mochila hasta que estén llaves, cartera y móvil.
  • Repetir: remover la comida hasta que esté cocida.
  • Repetir: comprobar la lista de recados hasta que todos estén marcados como hechos.

Plantilla de análisis (lista para usar)

Usa esta plantilla cada vez que quieras “traducir” una situación a algo programable. Puedes escribirla en una nota y rellenarla en 3–5 minutos.

1) Qué se quiere lograr (objetivo y éxito)

  • Objetivo:
  • Criterios de éxito (medibles): … (por ejemplo: “antes de las 8:10”, “en 30 min”, “sin pasar del presupuesto”)

2) Qué información se tiene (entradas)

  • Entradas disponibles:
  • Entradas que faltan y cómo obtenerlas:

3) Qué límites hay (restricciones)

  • Tiempo:
  • Dinero/recursos:
  • Reglas/condiciones:

4) Qué decisiones aparecen

  • Decisión 1: Si … entonces …; si no …
  • Decisión 2: Si … entonces …; si no …

5) Qué pasos se repiten

  • Repetición 1: Repetir … hasta que …
  • Repetición 2: Repetir … hasta que …

6) Qué se entrega (salidas)

  • Salida principal: … (plan, lista, ruta, decisión final)
  • Salidas secundarias: … (recordatorios, checklist, tiempos estimados)

Guía práctica paso a paso: del caos a una descripción clara

Paso 1: Describe la situación en una frase (sin soluciones)

Ejemplo: “Por las mañanas pierdo tiempo y salgo tarde”.

Paso 2: Define el objetivo como un resultado observable

“Salir de casa a las 8:10 con llaves, cartera, móvil y botella de agua”.

Paso 3: Lista restricciones (lo que no se puede romper)

“Ducha máximo 10 min; desayuno 15 min; a las 7:00 no hacer ruido; a las 7:50 estar vestido”.

Paso 4: Identifica entradas (datos que influyen)

“Hora actual, clima, primera reunión, ropa limpia, tiempo de traslado”.

Paso 5: Define salidas (qué vas a producir)

“Un horario por bloques + checklist de salida”.

Paso 6: Escribe decisiones y repeticiones en lenguaje cotidiano

  • Decisión: Si hace frío, elijo abrigo; si no, chaqueta ligera.
  • Repetición: Reviso la checklist hasta que todo esté marcado.

Paso 7: Verifica con criterios de éxito

Comprueba que tu descripción permite responder: ¿se cumplió el objetivo? Si no puedes medirlo, ajusta el objetivo o los criterios.

Mini-ejercicios guiados (lenguaje cotidiano)

Ejercicio 1: Entradas y salidas (muy directo)

Situación: “Quiero decidir qué ropa ponerme”.

  • Entradas (elige 4–6): clima, actividad del día, código de vestimenta, ropa disponible, tiempo para arreglarse, preferencia personal.
  • Salida: conjunto elegido (prenda superior, inferior, calzado, extra).
  • Criterio de éxito: apropiado para el clima y la actividad; listo en menos de 5 minutos.

Ejercicio 2: Objetivo vs problema (separación)

Situación: “Siempre se me olvida comprar algo en el súper”.

  • Problema (una frase):
  • Objetivo (una frase medible):
  • Restricciones (2–3): … (presupuesto, tiempo, dieta)
  • Entradas (3–5): … (lista actual, inventario en casa, menú de la semana)
  • Salida: lista final de compra ordenada por secciones.

Ejercicio 3: Decisiones y repeticiones

Situación: “Preparar una comida rápida con lo que hay”.

  • Entradas: ingredientes disponibles, tiempo, porciones, restricciones alimentarias.
  • Decisión 1: Si tengo proteína + verdura, entonces hago salteado; si no, hago pasta/arroz con lo disponible.
  • Decisión 2: Si el tiempo es < 15 min, entonces elijo receta sin horno; si no, puedo cocinar algo más largo.
  • Repetición: Repetir “probar y ajustar sal” hasta que el sabor sea correcto.
  • Salida: receta elegida + pasos.
  • Criterio de éxito: lista en el tiempo; cumple la restricción (por ejemplo, sin cierto ingrediente).

Ejercicio 4: Describe un recado como si fuera una “función”

Completa el siguiente formato con un recado real tuyo (farmacia, banco, paquetería, etc.).

Objetivo: ...
Entradas: ...
Restricciones: ...
Salidas: ...
Criterios de éxito: ...

Pista: Si tus “salidas” son vagas (por ejemplo, “hacer el recado”), cámbialas por algo concreto: “comprobante”, “paquete enviado”, “producto comprado”, “cita agendada”.

Ahora responde el ejercicio sobre el contenido:

Al aplicar pensamiento computacional a una situación cotidiana, ¿qué descripción representa mejor el enfoque correcto antes de escribir código?

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

¡Tú error! Inténtalo de nuevo.

El enfoque consiste en convertir una situación real en un proceso claro: separar objetivo, entradas, salidas y restricciones, y después expresar decisiones (si/entonces) y repeticiones (repetir hasta) para que sea verificable.

Siguiente capítulo

Descomposición de problemas: convertir una idea en partes manejables

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

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.