Presentación — Unidad I
Esta página condensa, en formato de documentación, la presentación de apoyo usada en clase para esta unidad. No introduce información nueva respecto a los temas de la unidad — es un resumen visual de apoyo.
Al finalizar esta unidad podrás
Section titled “Al finalizar esta unidad podrás”| Contenido | Vas a poder… |
|---|---|
| 1.1 | Explicar por qué aprender a programar implica desarrollar capacidades de análisis, abstracción y resolución de problemas |
| 1.2 | Diferenciar computadora, algoritmo, programa y lenguaje, y explicar cómo se relacionan |
| 1.3 | Reconocer y utilizar de manera introductoria lenguaje natural, pseudocódigo y diagramas de flujo |
| 1.4 / 1.5 | Aplicar razonamiento lógico para construir soluciones y expresarlas como algoritmos |
Antes de empezar
Section titled “Antes de empezar”¿Programar significa escribir código? No exactamente. Antes de escribir una sola línea necesitamos comprender:
¿Qué problema queremos resolver?
Y después: ¿qué sabemos? → ¿qué necesitamos conseguir? → ¿qué información es relevante? → ¿qué solución podemos construir? La programación comienza mucho antes del teclado.
Un problema tiene cuatro elementos
Section titled “Un problema tiene cuatro elementos”Antes de diseñar un algoritmo necesitamos comprender qué queremos resolver. Un problema puede describirse mediante:
- Situación inicial — ¿dónde estamos?
- Objetivo — ¿a dónde queremos llegar?
- Datos — ¿con qué información contamos?
- Restricciones — ¿qué condiciones debemos respetar?
Ejemplo — aprobar una asignatura. Situación inicial: tenemos la calificación final de un estudiante. Objetivo: determinar si aprueba. Datos: calificación final y criterio de aprobación. Restricción: debe respetarse el criterio establecido. No necesitamos el nombre del estudiante, su edad ni su domicilio — esos datos pertenecen a la realidad, pero no son relevantes para esta solución.
De la realidad al modelo
Section titled “De la realidad al modelo”Una computadora no trabaja directamente con toda la realidad. Necesitamos construir una representación de los aspectos relevantes:
REALIDAD → OBSERVAR → ABSTRAER → MODELONo programamos la realidad completa. Construimos una solución a partir de un modelo de la parte relevante del problema. Ver 1. Importancia de aprender a programar.
Programar es más que escribir código
Section titled “Programar es más que escribir código”COMPRENDER → ANALIZAR → DISEÑAR → REPRESENTAR → IMPLEMENTAREn esta unidad nos concentraremos principalmente en comprender, analizar y diseñar soluciones algorítmicas.
Un algoritmo necesita ciertas propiedades
Section titled “Un algoritmo necesita ciertas propiedades”| Propiedad | Significado |
|---|---|
| Finitud | El procedimiento termina después de un número finito de pasos |
| Definitud | Cada paso está suficientemente definido, sin interpretación arbitraria |
| Entrada | Puede recibir cero o más datos de entrada |
| Salida | Produce uno o más resultados |
Estas propiedades son necesarias para que algo sea un algoritmo. No es lo mismo que sea un algoritmo de calidad: eso se evalúa con otros cuatro criterios — corrección, claridad, generalidad y eficiencia — que profundizarás más adelante en la carrera. Ver 2. Computadora, algoritmo, programa y lenguaje.
Algoritmo, solución y programa no son lo mismo
Section titled “Algoritmo, solución y programa no son lo mismo”PROBLEMA → SOLUCIÓN → ALGORITMO → REPRESENTACIÓN → PROGRAMAUn algoritmo puede expresarse mediante lenguaje natural, pseudocódigo o diagrama de flujo. Un programa utiliza un lenguaje de programación y está destinado a ser ejecutado por una computadora. Primero construimos la solución. Después decidimos cómo implementarla.
Representar algoritmos
Section titled “Representar algoritmos” ALGORITMO │ ┌──────────┼──────────┐ ↓ ↓ ↓ Natural Pseudocódigo Diagrama de flujoVer 3. Herramientas para representar algoritmos para el detalle de cada una, incluyendo Scratch como recurso opcional.
Pensamiento computacional
Section titled “Pensamiento computacional”Cuatro ideas de apoyo para razonar de forma sistemática: descomposición, reconocimiento de patrones, abstracción y diseño algorítmico. Ver 4. Razonamiento lógico y pensamiento computacional.
Ejemplo integrador: ¿aprueba el estudiante?
Section titled “Ejemplo integrador: ¿aprueba el estudiante?”Situación: tenemos una calificación finalObjetivo: determinar el resultadoRegla: se aprueba con 6 o másSalida: Aprobado / No aprobadoAlgoritmo en lenguaje natural:
1. Obtener la calificación final.2. Comparar la calificación con el criterio de aprobación.3. Si cumple el criterio, indicar "Aprobado".4. Si no lo cumple, indicar "No aprobado".Observa que todavía no escribimos código. Los casos límite (por ejemplo, una calificación de exactamente 6) nos obligan a revisar si realmente expresamos la regla que queríamos. Ver 5. Resolución de problemas en forma algorítmica.
La idea que debes llevarte
Section titled “La idea que debes llevarte”PROBLEMA → COMPRENSIÓN → ABSTRACCIÓN → MODELO → SOLUCIÓN → ALGORITMO → REPRESENTACIÓN → IMPLEMENTACIÓN → PROGRAMA → EJECUCIÓNProgramar consiste en transformar problemas en soluciones que puedan expresarse con suficiente precisión para ser implementadas y ejecutadas por una computadora.
Lo que sigue
Section titled “Lo que sigue”En la Unidad II comenzarás a trabajar con los elementos que permiten construir algoritmos de manera más precisa: datos, variables, operadores y expresiones. Primero aprendiste a pensar una solución. Ahora comenzarás a trabajar con los elementos que necesitas para expresarla con mayor precisión.
Referencias
Section titled “Referencias”Ver Referencias de la Unidad I para el listado completo con su justificación de relevancia.

