¿Qué es un Algoritmo?

Muchos que quieren iniciar en la programación siempre se preguntan por cuál lenguaje comenzar, personalmente recomiendo aprender y asimilar bien los conceptos básicos como ¿Qué es un algoritmo?, comprender cómo funciona la lógica formal puede darte la libertad de adaptarte rápidamente a cualquier lenguaje de programación.
Cuando pensamos en algoritmos, lo primero que nos viene a la cabeza son programas de computación, la era moderna, la tecnología, palabras que asociamos con lo moderno, pero si te digo que es un término antiguo, muy muy antiguo, ¿me creerías?.
La primera vez que se usó esta palabra fue hace muchísimo tiempo atrás, en el siglo IX, por el conocido “padre del álgebra” Al-Juarismi. Impresionante que un concepto que usamos como parte de la tecnología moderna lleve tanto tiempo.
No existe una definición oficial sobre este término, pero básicamente son pasos ordenados y finitos para resolver un tipo de problema.
Los autores Francisco Martínez y Gregorio Martín Quetglás lo definen de la siguiente manera:
“Podemos definir en una primera aproximación el concepto de algoritmo como un conjunto finito de procesos a su vez finitos y bien definidos que conducen a un resultado. Aunque bajo esta definición igual podría incluirse una receta de cocina que la explicación de cómo subir una escalera, históricamente a los algoritmos se los relaciono con procesos de cálculo matemático.”
La mejor forma de comprender bien este concepto es llevándolo a la práctica, es por esto que les traigo un ejemplo sencillo.
Mini-tutorial
Haremos el mismo algoritmo expresados en distintas formas: Pseudocódigo y diagrama de flujo.
Uno de los ejemplos más fáciles de entender por todos es obtener un promedio, en este caso, será un promedio de notas.
*-Realizar el algoritmo que permita al usuario introducir por teclado dos notas y calcular promedio.
NOTA: para hacer más simple el ejercicio la cantidad de notas se limitó a dos, pero es posible hacer un programa en donde no se especifique la cantidad.
Lo primero es saber: que necesitamos y cómo obtenerlo
- Se deben pedir la notas.
- para sacar un promedio debemos sumar todos los términos y luego dividirlo entre la cantidad.
Ahora traduciremos todo esto a pseudocódigo
Pseudocódigo
El formato básico que debe tener el algoritmo en pseudocódigo es el siguiente:
Programa: Nombre (aquí inicia)
Entorno: variables
Algoritmo: procesos
Finprograma (aquí termina)
A partir de esto crearemos el algoritmo en este lenguaje.
Programa: Promedio
Entorno: NOTA1, NOTA2, PROMEDIO son números enteros
Algoritmo:
escribir “Introduzca las notas”
leer NOTA1, NOTA2
calcular PROMEDIO = (NOTA1, NOTA2)/2
escribir “El promedio de notas es:” PROMEDIO
Finprograma
Diagrama de flujo
Ahora llevaremos esto a un diagrama de flujo, la idea es la misma, los diagramas de flujo tienen una serie de símbolos para representar cada acción, tomaremos como referencia el pseudocódigo.
aquí puedes consultar los principales símbolos


Como podemos ver en este ejemplo en esencia es lo mismo, lo que cambia es la manera de expresar, de allí la importancia del desarrollo de la lógica formal y el manejo de conceptos como variables, condiciones, etc.
Así como existen algoritmos tan sencillos como este, podemos encontrar unos muchos más complejos que cambiaron hasta la historia como el que ayudó a que el Apolo 11 llegara la luna u otros que usamos a diario como el del buscador de Google.
Para adquirir esta habilidad sólo debes practicar, plantea problemas cotidianos y crea tu algoritmo para solucionarlo. Quien sabe, quizás el próximo en desarrollar un algoritmo que cambie para siempre la historia seas tú.
