Que es un algoritmo

Que es un algoritmo Simplemente una serie de instrucciones sencillas que se llevan a cabo para solventar un problema. La

Views 107 Downloads 4 File size 122KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

Que es un algoritmo Simplemente una serie de instrucciones sencillas que se llevan a cabo para solventar un problema. La regla de multiplicar que aprendimos en el colegio y que permite sacar el producto de dos números de varias cifras, con papel y lápiz, es un sencillo algoritmo. Así, un algoritmo podría ser una receta de cocina o las instrucciones para fabricar un avión de papel a partir de un folio. Los algoritmos tienen una entrada (input) y una salida (output), entre ambas están las instrucciones: la entrada podría ser la carne picada, el tomate, las láminas de pasta y la salida la lasaña perfectamente gratinada. “Aunque en estas tareas muchas veces influye la habilidad de las personas que las realizan: no es lo mismo una receta de cocina preparada por un gran chef, que incluso puede mejorarla, que por un principiante”, matiza Miguel Toro, catedrático del Departamento de Lenguajes y Sistemas Informáticos de la Universidad de Sevilla. En realidad, los algoritmos recogen operaciones tan sencillas que pueden ser realizadas con éxito por cualquiera. Incluso por las máquinas

Tipos de algoritmo Algoritmos cualitativos: Estos algoritmos son aquellos en los que se colocan elementos verbales. Un ejemplo de este tipo de algoritmos son las instrucciones o los «paso a paso» que se dan de formal oral. Tal es el caso de las recetas de cocina o las instrucciones para hacer un trabajo de bricolaje.

Algoritmos cuantitativos: Son lo contrario de los algoritmos cualitativos, porque se colocan elementos numéricos. Este tipo de algoritmos se utilizan en las matemáticas para realizar cálculos. Por ejemplo, para encontrar una raíz cuadrada o resolver una ecuación .

Algoritmo computacional:

Son los algoritmos que se hacen con una computadora; muchos de estos algoritmos son más complejos y por eso necesitan ser realizados a través de una máquina. También pueden ser algoritmos cuantitativos que se optimizan.

Algoritmo no computacional:

Estos algoritmos son aquellos que no pueden realizarse con una computadora; por ejemplo, la programación de un televisor.

Algoritmos probabilísticos:

Es un algoritmo donde el resultado o la manera en que se obtiene el resultado depende de la probabilidad. A veces también son llamados algoritmos aleatorios.

Programación dinámica:

se refiere al método en el cual el algoritmo computa el resultado. A veces la solución de un elemento del problema depende de la solución de una serie de problemas más pequeños.

Algoritmos heurísticos:

son aquellos que encuentran soluciones entre todas las posibles, pero no garantizan que la mejor de estas será encontrada. Por ese motivo son considerados como algoritmos aproximados o no precisos.

Algoritmos de vuelta atrás:

Son algoritmos que han sido revocados al observar su comportamiento. Típicamente son aproximaciones del algoritmo original que son construidos para propósitos como competición o estudios.

Algoritmos de marcaje:

Este algoritmo utiliza la automatización para fijar los precios de forma dinámica, basándose en factores como el comportamiento del cliente.

Algoritmo voraz:

En muchos de los problemas, realizar decisiones voraces lleva a soluciones óptimas. Este tipo de algoritmos es aplicable a problemas de optimización.

Lenguajes algorítmicos Lenguaje natural:

Es aquél que describe en español, para nuestro caso, los pasos a seguir utilizando un vocabulario cotidiano. Se le conoce como lenguaje jerga cuando se utilizan términos especializados de una determinada ciencia profesión o grupo.

Lenguaje de diagrama de flujo:

Es aquél que se vale de diversos símbolos para representar las ideas o acciones a desarrollar. Es útil para organizar las acciones o pasos de un algoritmo pero requiere de etapas posteriores para implementarse en un sistema de cómputo.

Lenguaje natural de programación:

Son aquéllos que están orientados a la solución de problemas que se definen de una manera precisa. Generalmente son aplicados para la elaboración de fórmulas o métodos científicos.

Tipos de Lenguajes algorítmicos Gráficos:

es la representación grafica de las operaciones que realiza un algoritmo (diagrama

de flujo)

No gráficos:

representa en forma descriptiva las operaciones que debe realizar un algoritmo

(pseudocódigo)

Metodología para la solución de problemas por medio de computadoras Definición del Problema: Esta fase está dada por el enunciado del problema, el cual requiere una definición clara y precisa. Es importante que se conozca lo que se desea que realice

la computadora; mientras esto no se conozca del todo no tiene mucho caso continuar con la siguiente etapa.

Análisis del Problema: Una vez que se ha comprendido lo que se desea de la computadora, es necesario definir: Los datos de entrada. Cual es la información que se desea producir (salida) Los métodos y fórmulas que se necesitan para procesar los datos.

Diseño del Algoritmo: Las características de un buen algoritmo son: 1. Debe tener un punto particular de inicio. 2. Debe ser definido, no debe permitir dobles interpretaciones. 3. Debe ser general, es decir, soportar la mayoría de las variantes que se puedan presentar en la definición del problema. 4. Debe ser finito en tamaño y tiempo de ejecución.

Codificación: La codificación es la operación de escribir la solución del problema (de acuerdo a la lógica del diagrama de flujo o pseudocodigo), en una serie de instrucciones detalladas, en un código reconocible por la computadora, la serie de instrucciones detalladas se le conoce como código fuente, el cual se escribe en un lenguaje de programación o lenguaje de alto nivel.

Prueba y Depuración: Los errores humanos dentro de la programación de computadoras son muchos y aumentan considerablemente con la complejidad del problema. El proceso de identificar y eliminar errores, para dar paso a una solución sin errores se le llama depuración.

Que es un diagrama de flujo Un diagrama de flujo es un diagrama que describe un proceso, sistema o algoritmo informático. Se usan ampliamente en numerosos campos para documentar, estudiar, planificar, mejorar y comunicar procesos que suelen ser complejos en diagramas claros y fáciles de comprender. Los diagramas de flujo emplean rectángulos, óvalos, diamantes y otras numerosas figuras para definir el tipo de paso, junto con flechas conectoras que establecen el flujo y la secuencia. Pueden variar desde diagramas simples y dibujados a mano hasta diagramas exhaustivos creados por computadora que describen múltiples pasos y rutas. Si tomamos en cuenta todas las diversas figuras de los diagramas de flujo, son uno de los diagramas más comunes del mundo, usados por personas con y sin conocimiento técnico en una variedad de campos. Los diagramas de flujo a veces se denominan con nombres más especializados

Cuál es la representación gráfica del diagrama de flujo El diagrama de flujo es la representación gráfica de la gestión de procesos a la que hacía referencia en un artículo anterior. En esta representación, las etapas del proceso aparecen unidas entre sí por medio de flechas que indican la dirección del flujo y están representadas por símbolos que identifican un concepto o acción determinados. El diagrama de flujo describe las distintas acciones, tareas o actividades asociadas a un proceso y representa la secuencia entre cada una de ellas y su relación, así como la información complementaria, los recursos y materiales que se precisan para su ejecución. El desarrollo del diagrama de flujo de un proceso facilita su comprensión y dimensiona su magnitud, permitiendo que los implicados en su implantación (departamentos e individuos) tengan una perspectiva amplia y una visión de conjunto del proceso. Del mismo modo permite identificar los puntos críticos del proceso y los posibles errores que pudieran cometerse, asignando las responsabilidades oportunas si fuera preciso. También permite establecer las pautas asociadas de control y seguimiento de los costes y los tiempos, lo que redunda además en productividad y eficiencia. El uso de estos diagramas permite la implantación del pensamiento analítico en la gestión del proceso, lo que sumado a lo anteriormente expuesto hace del diagrama de flujo una herramienta indispensable en la gestión y optimización de los procesos. Para desarrollar un diagrama de flujo es necesario:

Identificar y determinar el proceso Hemos de identificar cuál es el proceso, qué implica y de qué tipo de proceso se trata (estratégico, operativo o de soporte). Así seremos capaces de determinar si es un proceso clave o subordinado.

Establecer y clasificar las etapas Es imprescindible establecer todas las etapas del proceso, clasificándolas en función de su importancia y de la dirección del flujo.

Determinar la profundidad y alcance del proceso También es importante determinar el grado de detalle que necesitamos, así como la profundidad del proceso, pues esto afectará a su desarrollo. Es recomendable plasmar todos los detalles, aunque no siempre es necesario.

Secuenciar el proceso Cada etapa está asociada a una acción o tarea que estará supeditada a la anterior y que, a su vez, condicionará a la posterior. Por ello habrá que determinar el flujo que permita garantizar el correcto desarrollo del proceso.

Crear el diagrama Es el momento de abordar el desarrollo gráfico del diagrama de flujo, para lo que habrá que contar con una herramienta informática específica.

Revisar el diagrama Una vez desarrollado es el momento de revisarlo detenidamente y verificar si está correcto.

Recomendaciones para el diseño de un diagrama de flujo Es necesario seguir una frecuencia gráfica de pasos, o procesos para alcanzar la solución del problema. Se recomienda que la construcción del diagrama esté correcta; al igual que el paso del mismo a un lenguaje de programación. Si está correcto puede resultar relativamente simple para el entendimiento de las personas ajenas a la elaboración del mismo, además permite que el problema se solucione de una manera más eficiente y directa.

Se recomienda buscar la mejor alternativa posible para la solución del problema, ya que los diagramas de flujos obligan a un análisis de todos los caminos posibles para encontrarle solución a cualquier situación o problema. 1. Se deben usar solamente líneas de flujo horizontal y/o vertical. 2. Se debe evitar el cruce de líneas utilizando los conectores. 3. Se deben usar conectores sólo cuando sea necesario. 4. No deben quedar líneas de flujo sin conectar. 5. Se deben trazar los símbolos de manera que se puedan leer de arriba hacia abajo y de izquierda a derecha. 6. Todo texto escrito dentro de un símbolo deberá ser escrito claramente, evitando el uso de muchas palabras.