ALGORITMO
Figura 1.
Figura 1.
En este espacio estudiaremos y aprenderemos el concepto básico de algoritmo, sus características, algunos ejemplos y practicaremos elaborando uno a partir de un problema cotidiano dado.
HISTORIA DE LOS ALGORITMOS
Historia de los algoritmos:
EL término
algoritmo procede del siglo IX, en el cual existió un astrónomo de origen persa
que redactó valiosos principios sobre las ecuaciones y el uso matemático de los
números. Su nombre era Muhammad ibn Musa al-khwarizmi y marcó diferencias
gracias a sus estudios. Posteriormente el término que él acuñó fue utilizado en
diversos casos, aunque uno de los momentos más gloriosos del algoritmo se
produjo en 1240, cuando el término tuvo presencia en el manual Carmen de
Algorismo, del autor Alezandre de Villedieu, un autor francés. En la actualidad
el algoritmo forma una parte fundamental de la información y de la programación
en todo tipo de trabajos.
La palabra
algoritmo se deriva de Al-khwarizmi, un matemático y astrónomo del siglo IX
quien, al escribir un tratado sobre manipulación de números y ecuaciones, el
KITAB al-jabrwálmugabala, usó en gran medida la noción de lo que se conoce hoy
como algoritmo.
DEFINICIONES DE ALGORITMO
Algoritmo:
Consiste en aplicar adecuadamente una serie
de pasos detallados que aseguran una solución correcta. Por lo general cada
algoritmo es específico de un dominio del conocimiento. La programación de
computadoras se apoya en este método.
Un algoritmo es una secuencia finita “bien
definida” de tareas “bien definidas”, cada una de las cuelas se puede realizar
con una cantidad finita de recursos. Se dice que una tarea está bien definida”
si se saben de manera precisa las acciones requeridas para su realización.
Aunque los recursos que debe utilizar cada tarea deben ser finitos estos no
están limitados, es decir, si una tarea bien definida requiere una cantidad
inmensa (pero finita) de algún recurso para su realización, dicha tarea puede
formar parte de un algoritmo. Además, se dice que una secuencia de tareas esta
“bien definida” si se sabe el orden exacto en que deben ejecutarse.
Ejecutar un algoritmo consiste en realizar
las tareas o instrucciones que lo conforman, en el orden especificado y
utilizando los recursos disponibles. Hoy se cuenta con máquinas que realizan
esta labor, pero se requiere que los algoritmos que ejecutan se escriban en un
lenguaje especial. Usar esos lenguajes especiales para especificar algoritmos
se llama programación de computadores.
Figura 2 |
Las características que debe poseer una secuencia de tareas
para considerarse algoritmo son: precisión, de finitud y finitud.
Precisión
|
De finitud o determinismo
|
Finitud
|
Hay un orden preciso en el cual deben ejecutarse
las tareas que conforman el algoritmo.
|
Todas las veces que se realicen las tareas o
pasos de un algoritmo, con las mismas condiciones iniciales, se deben obtener
resultados idénticos
|
El algoritmo debe terminar en algún momento y
debe usar una cantidad finita de recursos.
|
Figura 3. |
Estructura básica de un Algoritmo.
En esencia un algoritmo está constituido por los siguientes
tres elementos: Datos, Instrucciones y Estructuras de control.
Datos
|
Instrucciones
|
Estructuras de control
|
Para almacenar información y pueden ser:
-
Datos de entrada
-
Datos de salida
-
Datos intermedios
|
Las acciones o procesos que el algoritmo realiza
sobre los datos.
|
Las que determinan el orden en que se ejecutarán
las instrucciones del algoritmo
|
Ejemplo de algoritmos:
Cuando se piensa en un algoritmo en su forma más general,
estos están por todas partes. Una receta para cocinar es un algoritmo, el
método que se usa para resolver una suma o una división grande es un algoritmo,
y el proceso de doblar una camisa o unos pantalones es un algoritmo hasta la
rutina diaria al levantarte por las mañanas puede expresarse en un algoritmo.
-
Algoritmo para lavarse las manos:
1.
Inicio
2.
Abrimos la llave
3.
Mojamos las manos
4.
Aplicamos jabón
5.
Enjuagamos
6.
Cerramos la llave
7.
Secamos las manos
8.
Fin.
Estos son solamente ejemplos, se pueden agregar más pasos o
disminuir el proceso, eso depende de quien lo diseña, el objetivo es solucionar
ordenadamente el problema.
Observa el siguiente video para complementar la información
sobre los algoritmos
Problema 1. Algoritmo para prepararse para ir a la escuela.
Problema 2. Algoritmo para cambiar una llanta
-
Barrachina, N. (2016). Algoritmos a niñas y
niños. ¿Cómo explicarlo?. Educative. Barcelona, España. Recuperado de: https://edukative.es/como-explicar-algoritmos-ninas-y-ninos/
-
Mejía, M. ( ). Algoritmos a temprana edad para
el desarrollo del Pensamiento Lógico. Cuadernillo de Actividades. Recuperado
de: https://es.slideshare.net/mmejiac15/cuadernillo-de-lgica-y-algoritmos-para-nios-de-primaria
-
Magic Makers. (Productor). (2015). ¿Qué es un algoritmo?. [Video de
YouTube]. Recuperado de: https://www.youtube.com/watch?v=U3CGMyjzlvM
-
VIU. (2016). Algoritmos, programación y sus
aspectos principales. Universidad Virtual de Valencia. Recuperado de: https://www.universidadviu.es/algoritmos-programacion-aspectos-principales/
-
UNAL. (s/f). Introducción a la programación. Departamento
de Ingeniaría de Sistemas. Universidad de Colombia. Recuperado de: http://dis.unal.edu.co/~programacion/book/modulo1.pdf
Referencias Imágenes:
Figura 1. https://i.ytimg.com/vi/nrRxlHqb-ko/maxresdefault.jpg
Figura 2.
http://urbanismoytransporte.com/wp-content/uploads/2016/04/algoritmo1.jpg
Figura 3. https://files.merca20.com/uploads/2018/05/Algoritmo.jpg