
Los medios de expresión de un algoritmo son las herramientas que utilizamos para describir, representar y comunicar cómo funciona un algoritmo. Piensa en un algoritmo como una receta para resolver un problema. Necesitamos formas claras de escribir esa receta para que otros (¡o incluso la computadora!) puedan entenderla.
Lenguaje Natural
La forma más intuitiva es usar el lenguaje natural, como el español. Podemos describir los pasos del algoritmo usando frases cotidianas. Por ejemplo:
Ejemplo: "Para sumar dos números, primero toma el primer número, luego toma el segundo número, y finalmente súmalos."
Must Read
Aunque fácil de entender para humanos, el lenguaje natural puede ser ambiguo. La misma instrucción puede interpretarse de diferentes maneras. No es ideal para la comunicación precisa con una computadora.
Diagramas de Flujo
Los diagramas de flujo son representaciones gráficas de un algoritmo. Usan símbolos estándar para representar diferentes tipos de acciones (inicio, fin, proceso, decisión, entrada/salida de datos). Las flechas indican el orden en que se deben ejecutar las acciones.

Ejemplo: Un rectángulo representa un proceso (e.g., "Sumar a + b"). Un rombo representa una decisión (e.g., "¿a > b?").
Son muy útiles para visualizar la lógica del algoritmo de manera clara y concisa. Permiten identificar fácilmente bucles y condicionales.

Pseudocódigo
El pseudocódigo es un lenguaje "falso" o "imitación" de código. Se sitúa a medio camino entre el lenguaje natural y un lenguaje de programación real. Utiliza palabras clave y estructuras de control (si, entonces, sino, mientras, para) similares a las de los lenguajes de programación, pero sin la rigidez sintáctica.
Ejemplo:
INICIO
LEER numero1
LEER numero2
suma = numero1 + numero2
MOSTRAR suma
FIN

Es una excelente manera de planificar y diseñar algoritmos antes de implementarlos en un lenguaje de programación específico. Es fácil de traducir a un lenguaje de programación real.
Lenguajes de Programación
Finalmente, los lenguajes de programación (como Python, Java, C++) son las herramientas que usamos para escribir algoritmos que la computadora puede entender y ejecutar directamente. Utilizan una sintaxis muy precisa y reglas estrictas para evitar ambigüedades.
Ejemplo: En Python, la suma de dos números podría escribirse como suma = numero1 + numero2.
Son el medio más preciso y potente para expresar algoritmos, ya que la computadora puede ejecutar el código directamente. Cada lenguaje tiene sus propias ventajas y desventajas, y la elección del lenguaje depende del problema que se está resolviendo y de las preferencias del programador.
En resumen, la elección del medio de expresión depende de la audiencia y del propósito. El lenguaje natural puede ser útil para explicaciones informales, mientras que los lenguajes de programación son esenciales para la ejecución por computadora. Los diagramas de flujo y el pseudocódigo son herramientas valiosas para el diseño y la documentación.