ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Fundamentos De Programación


Enviado por   •  3 de Febrero de 2014  •  1.405 Palabras (6 Páginas)  •  501 Visitas

Página 1 de 6

Concepto de algoritmo y características

La palabra algoritmo proviene del nombre de un matemático persa conocido como Mohammad Al-KhoWârizmi, nacido alrededor del 780 d.c. en KhoWârizm, de ahí el su seudónimo. Se considera como el padre de la algoritmia porque definió las reglas paso a paso para sumar, restar, multiplicar y dividir números decimales. La traducción al latín de Al-Khwārizmī es algoritmi, que da origen a la palabra.

Formalmente, un algoritmo se define como una secuencia finita de instrucciones precisas y eficaces para resolver un problema, que trabaja a partir de cero o más datos (entrada) y devuelve un resultado (salida).4 Para ilustrar este concepto se presenta el siguiente escenario ficticio, que hemos llamado: El mundo de la ardilla Supongamos que una ardilla ha sido entrenada para realizar las instrucciones que se muestran en la tabla 2.1, sobre un tablero. INSTRUCCIÓN DESCRIPCIÓN DE LOS MOVIMIENTOS DE LA ARDILLA

avanza()

Se mueve una ubicación en la dirección actual

giraIzquierda()

Voltea a la izquierda

dejaBellota()

Coloca una bellota en la ubicación actual

hayBellota()

Responde si hay o no bellotas en la posición actual

hayPared()

Responde si hay o no pared en la ubicación siguiente

recogeBellota()

La ardilla coloca en su boca una bellota que está en la ubicación actual5

bellotasRecogidas()

Dice el número de bellotas que tiene en la boca

Los paréntesis al final de cada instrucción sirven para identificar que se trata de una orden que puede ejecutar la ardilla. Si observas la lista de instrucciones podrás darte cuenta que, la ardilla no es capaz de voltear a la derecha y mucho menos de responder a órdenes más complejas como “mueve una bellota que se encuentra en la primera casilla del tablero al final del mismo”. Sin embargo, podría realizar ambas tareas si se le dan las instrucciones precisas en términos de las acciones que sabe hacer. Por ejemplo, para que la ardilla gire a la derecha tendríamos que ordenarle tres veces que girará a la izquierda, es decir, la secuencia de instrucciones que debe ejecutar es:

giraIzquierda()

giraIzquierda()

giraIzquierda()

Estos pasos constituyen un algoritmo, el cual soluciona el problema de hacer que la ardilla gire a la derecha. Una de las características principales de los algoritmos es que cada paso debe estar definido de forma clara y precisa, sin ambigüedades, de tal manera que pueda ejecutarse de manera inequívoca, por ejemplo, en el mundo de la ardilla, la instrucción gira() sería una instrucción ambigua, ya que la ardilla no sabría si debe girar a la derecha o a la izquierda. Otra característica de los algoritmos es que siempre terminan, por lo que no puede ser una lista infinita de pasos. Y tampoco puede contener pasos que sean irrealizables o cuya ejecución sea infinita, pues en este caso no sería posible calcular el resultado deseado, si una instrucción está bien definida y es eficaz se puede asegurar que su ejecución termina con éxito, sin embargo, esto no garantiza, de ninguna manera, que el algoritmo también termine. Por lo anterior, al diseñar un algoritmo se debe garantizar que dada cualquier entrada siempre termine

y calcule la respuesta correcta. De tal manera que todo algoritmo debe tener las siguientes características: 1.Entrada. 2. Salida. 3. Definido. 4. Eficaz. 5. Terminación. Una vez que se ha diseñado un algoritmo, se recomienda realizar una prueba de escritorio para verificar si funciona correctamente, ésta consiste en ejecutar el algoritmo utilizando papel y lápiz, se propone datos de entrada específicos y se realiza cada una de las instrucciones en el orden establecido, registrando los cambios que se producen después de la ejecución de cada instrucción. De esta manera, se valida que el resultado obtenido en la prueba de escritorio corresponda al resultado deseado (el correcto).

Representación de algoritmos Existen diversas formas de representar un algoritmo, en la unidad anterior expusimos diversas formas de representar la solución del problema de calcular el área de un rectángulo, por ejemplo, en el programa 1.1 se expresa la solución en pseudocódigo, después en el algoritmo 1.1 se representa en lenguaje natural (español) y en el programa 1.2 se utiliza el lenguaje de programación C, o se puede expresar mediante la fórmula matemática: á= b×h

Todas estas representaciones, excepto el lenguaje natural, se consideran formales, y cabe mencionar que existen más, sin embargo, las representaciones más comunes son el pseudocódigo y los diagramas de flujo. La primera, generalmente se utilizar por su parecido con el lenguaje natural (español, inglés, francés o cualquier otro) y porque su codificación

...

Descargar como (para miembros actualizados)  txt (9 Kb)  
Leer 5 páginas más »
Disponible sólo en Clubensayos.com