Palabras parecidas, ideas diferentes
En programación es importante distinguir el problema que queremos resolver, la solución que diseñamos y la forma en que la comunicamos o ejecutamos.
AlgoritmoConjunto finito, ordenado y preciso de pasos para resolver un problema. Puede escribirse con palabras, dibujos o código.Es la solución lógica.
PseudocódigoForma de escribir un algoritmo con lenguaje cercano al humano y estructuras parecidas a la programación.Es una representación intermedia.
ProcedimientoUna tarea o conjunto de instrucciones que puede ejecutarse dentro de un proceso. En un lenguaje puede ser una función que no necesariamente devuelve un valor.Es una operación organizada.
ProgramaImplementación de uno o varios algoritmos en un lenguaje que la computadora puede interpretar o compilar.Es la solución codificada.
ProcesoConjunto de acciones o transformación que ocurre para pasar de entradas a salidas. También puede referirse a un programa en ejecución.Es lo que sucede.
Diagrama de flujoRepresentación gráfica de un algoritmo mediante símbolos, flechas y decisiones.Es la solución dibujada.
ConceptoPregunta que respondeEjemplo
Algoritmo¿Qué pasos resuelven el problema?Pasos para calcular un promedio
Pseudocódigo¿Cómo describo esos pasos con claridad?Leer A, B, C; calcular suma
Programa¿Cómo lo ejecuta una computadora?Código en Python o Java
Ejemplo de transformación
La misma solución puede existir como algoritmo escrito en español, convertirse en pseudocódigo, representarse en un diagrama de flujo y finalmente implementarse como programa. No son sinónimos: describen niveles distintos de una misma solución.
Algoritmo: calcular promedio
↓Pseudocódigo: Leer A, B y C
↓Programa: promedio = (A + B + C) / 3