Descomposición, patrones y abstracción
El sábado, Valentina quiere organizar una merienda para quince amigos del liceo. Son tantas cosas juntas (qué comprar, quién lleva qué, dónde, a qué hora) que no sabe por dónde empezar. ¿Hay una forma de pensar que te ayude a resolver problemas grandes sin marearte? Sí: el pensamiento computacional. Lo usan quienes programan, pero también te sirve para organizar una merienda. Al final de la página volvemos a la merienda de Valentina.
Las cuatro herramientas
El pensamiento computacional es una manera de resolver problemas para que los pueda resolver una persona, una computadora o las dos juntas. Tiene cuatro herramientas:
| Herramienta | Qué hace | Pregunta que te ayuda |
|---|---|---|
| Descomposición | Divide un problema grande en partes pequeñas | ¿En qué partes se puede dividir? |
| Reconocimiento de patrones | Encuentra lo que se repite o se parece | ¿Qué se repite? |
| Abstracción | Se queda con lo importante y deja de lado el resto | ¿Qué datos hacen falta de verdad? |
| Algoritmos | Ordena los pasos para resolverlo | ¿Qué hago primero, qué después? |
No se usan siempre en este orden, ni todas a la vez. Son como herramientas de una caja: elegís la que hace falta.
Valentina quiere organizar una merienda para su grupo de amigos del liceo. Explicá con tus palabras qué significa descomponer un problema y escribí tres subproblemas en…
Valentina quiere organizar una merienda para su grupo de amigos del liceo. Explicá con tus palabras qué significa descomponer un problema y escribí tres subproblemas en los que se puede dividir la organización de la merienda.
Descomposición: partir el problema
Descomponer es dividir un problema grande en problemas más chicos, y cada uno más fácil de resolver. Se repite hasta que cada parte es tan simple que sabés cómo hacerla.
Volvamos a Valentina. «Organizar la merienda» es muy grande, pero se puede partir en:
-
Qué comprar: lista de alimentos y bebidas.
-
Cuánto cuesta: presupuesto y cuánto aporta cada uno.
-
Dónde y cuándo: lugar y horario.
-
Quién lleva qué: reparto de tareas.
Y cada parte se puede partir más. «Qué comprar» se divide en comida y bebida, y la comida en salada y dulce.
¿Para qué sirve? Para tres cosas:
-
Cada parte se entiende y se prueba por separado.
-
Un equipo se puede repartir las partes: cada persona trabaja en una.
-
Si algo sale mal, sabés en qué parte buscar el error.
Mateo y su grupo tienen que programar un juego en el que una nave esquiva meteoritos y suma puntos. Descomponé el juego en al menos cuatro partes más pequeñas (por…
Mateo y su grupo tienen que programar un juego en el que una nave esquiva meteoritos y suma puntos. Descomponé el juego en al menos cuatro partes más pequeñas (por ejemplo, el movimiento de la nave) y explicá por qué trabajar por partes facilita la tarea de un equipo.
Orden y dependencias
Al descomponer, algunas partes dependen de otras: no podés repartir tareas sin saber qué hay que comprar. Otras son independientes y se pueden hacer a la vez, «en paralelo». Pensá en una feria de ciencias: elegir los salones y armar los afiches no dependen entre sí, así que dos equipos pueden trabajar al mismo tiempo. En cambio, armar el cronograma de visitas necesita saber antes cuántos stands y salones hay.
El liceo quiere organizar una feria de ciencias con 12 stands, 4 salones y 3 turnos de visita para los demás grupos. Descomponé el problema de organizar la feria en…
El liceo quiere organizar una feria de ciencias con 12 stands, 4 salones y 3 turnos de visita para los demás grupos. Descomponé el problema de organizar la feria en subproblemas, ordenalos en una secuencia lógica indicando cuáles dependen de otros, y señalá cuáles podrían resolverse en paralelo por equipos distintos. Justificá tus decisiones.
Reconocimiento de patrones
Un patrón es algo que se repite o se parece. Reconocerlo permite ahorrar trabajo: si algo se repite, lo resolvés una vez y lo usás muchas.
Mirá esta secuencia:
El patrón es círculo, cuadrado, y se repite en bloques de 2. Con eso podés saber cualquier figura sin dibujarlas todas: las posiciones impares (1, 3, 5…) son círculos y las pares (2, 4, 6…) son cuadrados. La figura 11 es impar, entonces es un círculo.
También hay patrones con números. Sofía anota los bizcochos que vende una panadería de barrio: 12, 14, 16, 18, 20. Cada día se venden 2 más que el anterior. Si el patrón sigue, el día siguiente serían 22 y después 24.
Observá esta secuencia de figuras: círculo, cuadrado, círculo, cuadrado, círculo, cuadrado, círculo, cuadrado. Indicá qué patrón se repite y decí cuál sería la figura…
Observá esta secuencia de figuras: círculo, cuadrado, círculo, cuadrado, círculo, cuadrado, círculo, cuadrado. Indicá qué patrón se repite y decí cuál sería la figura número 11 de la secuencia, explicando cómo lo pensaste.
Sofía anota cuántos bizcochos vende una panadería de barrio cada día de la semana: lunes 12, martes 14, miércoles 16, jueves 18, viernes 20. Identificá el patrón, usalo…
Sofía anota cuántos bizcochos vende una panadería de barrio cada día de la semana: lunes 12, martes 14, miércoles 16, jueves 18, viernes 20. Identificá el patrón, usalo para predecir cuántos bizcochos se venderán el sábado y el domingo si el patrón continúa, y explicá qué limitación tiene esa predicción.
Abstracción: lo importante y nada más
Abstraer es quedarse con lo que importa para resolver un problema y dejar de lado los detalles que no ayudan.
El mapa de una línea de ómnibus de Montevideo es un buen ejemplo. Dibuja las paradas y el recorrido, pero no los colores de las casas ni cada árbol. ¿Por qué? Porque para saber dónde bajarte no hacen falta. Si los dibujaran, el mapa sería más difícil de leer, sin ayudarte más.
Hacerlo siempre implica una decisión: qué entra y qué no. Eso depende de la pregunta que querés responder. Para saber cuánto paga cada uno en una cuenta compartida:
Para armar el mapa de una línea de ómnibus de Montevideo, se dibujan las paradas y el recorrido, y no se dibujan los colores de las casas ni los árboles de cada cuadra.…
Para armar el mapa de una línea de ómnibus de Montevideo, se dibujan las paradas y el recorrido, y no se dibujan los colores de las casas ni los árboles de cada cuadra. Explicá qué es la abstracción y indicá por qué en este caso se dejan de lado esos detalles.
Santiago debe diseñar una aplicación para calcular cuánto paga cada persona cuando un grupo de amigos comparte la cuenta de una pizzería. Indicá cuáles son los datos de…
Santiago debe diseñar una aplicación para calcular cuánto paga cada persona cuando un grupo de amigos comparte la cuenta de una pizzería. Indicá cuáles son los datos de entrada que realmente necesita la aplicación, cuáles datos del problema son irrelevantes (por ejemplo, el nombre de la pizzería) y qué resultado debería dar. Justificá tu elección usando la idea de abstracción.
Algoritmos: juntar todo
Un algoritmo es una lista ordenada de pasos claros que lleva de unos datos de entrada a un resultado. Aparece cuando ya descompusiste, buscaste patrones y abstrajiste: ahora escribís qué hacer, paso a paso. (En el apartado siguiente los vas a trabajar con más detalle.)
Veamos cómo se combinan las cuatro herramientas con un robot que dibuja. Lucía quiere dibujar un cuadrado, un triángulo equilátero y un hexágono regular, todos con lados iguales.
Esa versión general es más útil que tres procedimientos separados: la escribís una sola vez, sirve para cualquier polígono regular, y si encontrás un error lo corregís en un solo lugar.
Lucía necesita un procedimiento para dibujar con un robot un cuadrado, un triángulo equilátero y un hexágono regular, todos de lados iguales. Compará los tres dibujos,…
Lucía necesita un procedimiento para dibujar con un robot un cuadrado, un triángulo equilátero y un hexágono regular, todos de lados iguales. Compará los tres dibujos, identificá qué tienen en común (patrón) y proponé una versión general abstracta del procedimiento que sirva para cualquier polígono regular, indicando qué datos variarían de un polígono a otro. Explicá por qué esa generalización es más útil que tres procedimientos separados.
Volvé al principio: Valentina descompone la merienda en comprar, presupuestar, elegir lugar y repartir tareas. Detecta un patrón (otras veces cada amigo gastó lo mismo) y abstrae lo importante: cuántos son, cuánto hay para gastar. Con eso arma un algoritmo de pasos ordenados y ya sabe por dónde empezar.