martes, 12 de enero de 2016

Algoritmos - 1 de 5



5.1 Introducción

Parece ser que el origen de la palabra "algoritmo" no está del todo claro. Según la Real Academia de la Lengua, quizá provenga del latín tardío (algobarismus). Otra teoría es que la palabra "algoritmo" tiene su origen en el nombre de un matemático árabe del siglo IX llamado Al-Khuwarizmi, quien estaba interesado en resolver ciertos problemas aritméticos y que concretó una serie de métodos para resolverlos. Estos métodos eran una lista de instrucciones específicas que, de seguirlas obedientemente, se lograba resolver el problema. Quienes abogan por esta teoría defienden que hoy en día, en honor a Al-Khuwarizmi, se denomina algoritmo al conjunto de instrucciones que, de ser seguidas, se logra realizar correctamente una tarea.

Estas instrucciones han de ser entendibles por quien tiene que ejecutarlas, aunque quien tenga que ejecutarlas les vea sentido alguno. La característica más importante de un proceso algorítmico es que no sea ambiguo, de manera que cada una de las instrucciones que lo constituyen debe significar solamente una cosa posible. De forma que los algoritmos son una herramienta interesantísima para programar un ordenador. A pesar de lo "inteligentes" que aparentan ser las computadoras, éstas no deciden nada por sí solas, sino que se limitan a ejecutar las instrucciones que se han programado en ellas.
Esta manera de funcionar hace que los programadores, antes de escribir las instrucciones para un ordenador, planteen el algoritmo a realizar en un lenguaje "pseudo humano". Asimismo enlazan instrucciones de manera global entre sí mediante diagramas de flujo, concretando el orden de ejecución de las instrucciones.



5.2 Algoritmos directos

Los primeros algoritmos que van a ser presentados son los algoritmos directos. Por un algoritmo directo se entiende aquel que se compone por un número fijo de pasos. 

La característica más importante de los algoritmos directos es que el flujo del programa es unidireccional y no se repite ninguno de sus pasos. 


Ejemplo 4. Algoritmo para saber si el número 5 es primo

Un algoritmo para determinar si el número 5 es primo puede consistir en dividir al número 5 entre todos los números naturales entre el 2 y el 4. Si alguna división es exacta significará que el número 5 no es primo. Para chequear si alguna división es exacta lo que se va a optar es por guardar cada división en una variable llamada D y comparar a D con la parte entera de la propia variable D -para lo que se utilizará la función FIX. Si al realizar alguna división se detecta que D es un número entero (no tiene decimales), puede concluirse que el número 5 no es primo, mientras que si después de realizar todas las divisiones resulta que en ningún momento D es un número entero, se concluye que el número 5 es primo.

El diagrama de flujo del algoritmo descrito y el programa que lo ejecuta queda de la siguiente manera:



Ejemplo 5. Determinar el tipo de raíces de un polinomio de segundo grado




De forma que se dan tres posibilidades en las que: 
Si el contenido de la raíz es mayor que 0, las raíces son reales y distintas.
Si el contenido de la raíz es igual a cero, las raíces son reales e iguales.
Si el contenido de la raíz es menor que 0, las raíces son imaginarias.
Con lo que el algoritmo para determinar el tipo de raíces de un polinomio de segundo grado puede plantearse de manera directa chequeando cuál de estas tres posibilidades es la que se cumple.
A continuación se presenta el diagrama de flujo y el programa:



Espero haber ayudado en algo. Hasta la próxima oportunidad!









  

No hay comentarios:

Publicar un comentario en la entrada