Qué es un algoritmo informático

La palabra algoritmo proviene del sobrenombre de un matemático árabe del siglo IX, Al-Khwarizmi, que fue reconocido por enunciar paso a paso las reglas para las operaciones matemáticas básicas con decimales (suma, resta, multiplicación y división).

Vemos definición de algoritmo como un grupo de órdenes consecutivas que presentan una solución a un problema o tarea. Algunos ejemplos de algoritmos los podemos encontrar en las matemáticas (como el algoritmo para resolver una multiplicación) y en los manuales de usuario de un aparato (como una lavadora o una impresora).

Sin embargo, hoy en día se relaciona la palabra algoritmo con el mundo de la informática, más concretamente en la programación; los conocidos como algoritmos informáticos.

Un programa informático no es otra cosa que una serie compleja de algoritmos escritos en un lenguaje de programación que pueden ser ejecutados en un ordenador, por lo que, el conocimiento de algoritmos en programación es esencial.

Qué es un algoritmo en informática

Un algoritmo informático es una secuencia de instrucciones finitas que llevan a cabo una serie de procesos para dar respuesta a determinados problemas. Es decir, un algoritmo informático resuelve cualquier problema a través de unas instrucciones y reglas concisas, mostrando el resultado obtenido.

Los algoritmos son muy importantes en el mundo de la informática ya que permiten al programador resolver el problema antes de escribirlo en un lenguaje de programación que entienda la máquina u ordenador. Antes de escribir el código de un programa hay que resolver con un algoritmo el problema que se nos plantea.

Cómo hacer un algoritmo

Todo algoritmo consta de tres partes.

Entrada: en la entrada o input del algoritmo será donde se introduzcan todos aquellos datos que el algoritmo necesite para operar.

Procesamiento: con lo recibido en la entrada o input, el algoritmo realizará una serie de cálculos lógicos para resolver el problema.

Salida: los resultados obtenidos en el procesamiento se mostrarán en la salida o output del algoritmo.

Para hacer un algoritmo hay que tener en cuenta sus características: secuenciales, se procesan uno después del otro; precisos, deben ser objetivos al resolver el problema; ordenados, deben ser leídos y ejecutados de forma precisa; finitos, deben tener un número determinado de pasos; concretos, deben mostrar un resultado al problema resuelto; y definidos, ante los mismos inputs siempre deben obtenerse los mismos outputs.

En resumen, un algoritmo debe ser suficiente para resolver el problema y ante varios algoritmos que resuelvan el mismo problema, siempre será preferible el que tenga un camino más corto.

Imagen creativa de código de programación

Tipos de algoritmo

De acuerdo con alguno de sus atributos los algoritmos pueden clasificarse de distintas formas:

Según su sistema de signos tenemos los algoritmos cualitativos (paso a paso) o cuantitativos (utilizan cálculos numéricos).

A los algoritmos que requieran del uso de un ordenador para su resolución se le conocen como algoritmos computacionales (siendo los no computacionales aquellos que no requieran el uso de un ordenador).

Los algoritmos condicionales llegados a un punto del mismo, presentan varias acciones para ejecutarse y resolver el problema. Estas acciones no se presentan al azar sino que hay una condición previa que según la cual se ejecutará una u otra acción.

Se conoce como algoritmos secuenciales aquellos con estructura secuencial, es decir, la salida de una secuencia es la entrada de la siguiente.

Ejemplos de algoritmos

Un ejemplo de algoritmo cualitativo sería una receta de cocina, donde se van enumerando los pasos a realizar, uno a uno y de forma verbal. Por otro lado, un ejemplo de algoritmo cuantitativo sería el cálculo del área de un rectángulo, que conlleva el uso de cálculos matemáticos para su obtención.

Para un algoritmo condicional podríamos ver un problema donde dados los catetos de un triángulo rectángulo, calcular su hipotenusa.

Analisis del problema

  1. Tenemos que leer la longitud de los dos catetos y calcular la hipotenusa.
  2. (Teorema de Pitágoras)
  3. Variables de entrada: cateto1(real), cateto2(real)
  4. Variables de salida: hipotenusa(real)

Diseño del algoritmo

  1. Leer la longitud de los catetos
  2. Calcular hipotenusa (En un triángulo rectángulo el cuadrado de la hipotenusa es igual a la suma de los cuadrados de los catetos). Por lo tanto la hipotenusa es igual a la raí­z cuadrada de la suma de los cuadrados de los catetos.
  3. Mostrar la hipotenusa
Proceso CalcularHipotenusa
	Definir cateto1,cateto2,hipotenusa Como Real;
	Escribir "Introduce el cateto 1:";
	Leer cateto1;
	Escribir "Introduce la cateto 2:";
	Leer cateto2;
	hipotenusa <- raiz(cateto1 ^ 2 + cateto2 ^ 2);
	Escribir "La hipotenusa es ",hipotenusa;
FinProceso

Conclusiones

Un ejemplo actual de un algoritmo informático que se suele utilizar a diario, es el algoritmo de búsqueda de Google. Cuando entramos al buscador de Google y realizamos una búsqueda, lo que activamos es un algoritmo, que ejecuta Google y que nos devuelve una serie de resultados de búsqueda. En el caso de posicionamiento web o SEO, este algoritmo o algoritmos que utiliza Google, son fuentes de controversia, porque se desconoce su funcionamiento exacto y son muchos los que diariamente tratan de descifrarlo.

Si estás interesado en aprender en profundidad cómo analizar problemas de desarrollo, diseño de algoritmos y diagramas de bloques, tenemos un curso de introducción a la programación que resulta ideal para comenzar a formarte como programador profesional. 

Imagen 0 en Qué es un algoritmo informáticoEsta formación incluye conocimientos de pseudocódigo, que será un lenguaje escrito para representar los algoritmos antes de programarlos y de diagrama de flujos, que representa de manera simbólica los distintos pasos del algoritmo.

También te puede interesar...

JavaScript para principiantes

Curso de JavaScript para principiantes

2 horas y 46 segundos · curso

  • Frontend
Python 3 desde cero

Curso de Python 3 desde cero

6 horas y 13 minutos · curso

  • Backend
Lenguajes de Programación

Qué es pseudocódigo

18 Junio 2019 Angel Robledano

Las cookies nos permiten ofrecer nuestros servicios. Al utilizar nuestros servicios, aceptas el uso que hacemos de las cookies. Más Información.