Introducción
Antes de escribir una sola línea de código en Python, Java o cualquier otro lenguaje, un programador piensa la solución de un problema paso a paso, sin atarse todavía a la sintaxis concreta de ningún lenguaje. Ese "plan de pasos" es un algoritmo, y la forma más habitual de escribirlo antes de programarlo de verdad es el pseudocódigo.
En este artículo vas a aprender qué es un algoritmo, las tres estructuras de control que forman la base de cualquier programa, y a leer y escribir pseudocódigo sencillo con dos ejemplos resueltos.
1. ¿Qué es un algoritmo?
Para que un algoritmo sea correcto, debe cumplir varias condiciones:
- Finito. Tiene que terminar después de un número limitado de pasos, no puede repetirse para siempre.
- Preciso. Cada paso debe estar definido sin ambigüedad: dos personas que lo sigan deben llegar al mismo resultado.
- Con entradas y salidas. Puede recibir cero o más datos de entrada, pero siempre debe producir al menos un resultado de salida.
- Factible. Cada paso debe poder realizarse de verdad, con los recursos disponibles, en un tiempo finito.
2. Formas de representar un algoritmo
3. Las tres estructuras de control
Cualquier programa, por complejo que sea, se construye combinando solo estas tres estructuras:
- Secuencial. Las instrucciones se ejecutan una detrás de otra, en el orden en que están escritas.
- Condicional (SI... ENTONCES... SINO...). Permite ejecutar unas instrucciones u otras según se cumpla o no una condición.
- Iterativa o bucle (MIENTRAS..., PARA...). Repite un bloque de instrucciones mientras se cumpla una condición, o un número determinado de veces.
4. Ejemplo 1: par o impar (estructura condicional)
Un algoritmo que lee un número y dice si es par o impar:
INICIO
LEER numero
SI (numero MOD 2 == 0) ENTONCES
ESCRIBIR "Es par"
SINO
ESCRIBIR "Es impar"
FIN SI
FIN
5. Ejemplo 2: sumar los números del 1 al 10 (estructura iterativa)
Un algoritmo con un bucle PARA, que repite una suma un número conocido de veces:
INICIO
suma <- 0
PARA i <- 1 HASTA 10 HACER
suma <- suma + i
FIN PARA
ESCRIBIR suma
FIN
6. Errores frecuentes
- ⚠️ Confundir la flecha de asignación (←) con el signo igual matemático (=). "suma <- suma + 1" no es una ecuación (nunca sería cierta en matemáticas): significa "calcula suma+1 y guarda el resultado en la variable suma".
- ⚠️ Olvidar inicializar las variables antes de usarlas. Una variable como "suma" necesita un valor de partida (normalmente 0) antes de empezar a sumarle cosas dentro de un bucle.
- ⚠️ Confundir cuándo usar PARA y cuándo usar MIENTRAS. PARA cuando conoces el número exacto de repeticiones; MIENTRAS cuando depende de una condición que no sabes cuántas veces se cumplirá.
- ⚠️ No pensar en los casos límite. ¿Qué pasa si la lista de entrada está vacía? ¿Y si el número es 0 o negativo? Un buen algoritmo contempla estos casos.
- ⚠️ Creer que el pseudocódigo tiene una sintaxis única y obligatoria. No existe un estándar universal: lo importante es que sea claro y que cualquier persona pueda seguir la lógica, no memorizar palabras clave exactas.
7. 📌 En 30 segundos
- Un algoritmo es una secuencia finita, precisa y ordenada de pasos, con al menos una salida.
- El pseudocódigo es una forma de escribir algoritmos sin atarse a la sintaxis de un lenguaje concreto.
- Toda la programación se construye con tres estructuras: secuencial, condicional (SI) e iterativa (MIENTRAS/PARA).
- Usa PARA cuando sabes cuántas veces se repite; usa MIENTRAS cuando depende de una condición.
- Inicializa siempre las variables antes de usarlas dentro de un bucle.