Вы находитесь на странице: 1из 3

2.1 Anlisis de problema Es el primer paso a seguir para encontrar la solucin a un problema es el anlisis del problema.

En el anlisis del problema se requiere del mximo de creatividad e imaginacin Debido a que se busca una solucin se debe examinar cuidadosamente el problema a fin de identificar qu tipo de informacin es necesaria producir. En seguida se deben identificar aquellos elementos de informacin ofrecidos por el problema y que resulten tiles para obtener la solucin al problema. un procedimiento para producir los resultados deseados a partir de los datos, es el algoritmo 2.2 Representacin de algoritmos: grfica y pseudocdigo. Las herramientas de programacin utilizadas como lenguajes algortmicos son: Pseudocdigo: es un lenguaje algortmico, muy parecido al espaol pero ms conciso que permite la redaccin rpida del algoritmo. Diagramas de flujo: ha sido la herramienta de programacin por excelencia, y an hoy sigue siendo muy utilizada. Es fcil de disear pues el flujo lgico del algoritmo se muestra en un diagrama en lugar de palabras. Pseudocdigo Es un lenguaje de pseudoprogramacin, muy parecido a un lenguaje de programacin. El pseudocdigo es muy fcil de utilizar, ya que es muy similar al espaol. Algunas palabras utilizadas en el pseudocdigo: Inicio Fin Leer Escribir Asignar (x y+z) Ejemplo Programa Calculo rea Rectngulo 1. 2. 3. 4. 5. Inicio Leer; base, altura rea base x altura Escribir; base, altura, rea Fin

Para desarrollar un pseudocdigo se necesita saber los tipos de datos que se deben tener : Entero: Subconjunto finito de los nmeros enteros, cuyo rango depender del lenguaje en el

que posteriormente codifiquemos el algoritmo y del ordenador. El rango depende de cuantos bits utilice para codificar el numero, normalmente 2 byes. Para nmeros positivos, con 16 se pueden almacenar 216 real: Subconjunto de los nmeros reales limitado no slo en cuanto al tamao, sino tambin en cuanto a la precisin Lgico: Conjunto formado por los valores Cierto y Falso. 1 y 0. Carcter: Conjunto finito y ordenado de los caracteres que el Ordenador Diagramas Un diagrama de flujo utiliza smbolos estndar en el que cada paso del algoritmo se visualiza dentro del smbolo y en el orden en que estos pasos se ejecutan, se indica conectndolos con flechas llamadas lneas de flujo, ya que indican el flujo lgico del algoritmo. El diagrama de flujo es la representacin grfica del algoritmo o proceso. Se utiliza en disciplinas como la programacin, la economa, los procesos industriales y la psicologa cognitiva. Estos diagramas utilizan smbolos con significados bien definidos que representan los pasos del algoritmo, y representan el flujo de ejecucin mediante flechas que conectan los puntos de inicio y de fin de proceso. 2.3 Diseo de algoritmos aplicados a problemas Los algoritmos son independientes tanto del lenguaje de programacin en que se expresan como de la computadora que lo ejecuta. En cada problema el algoritmo se puede expresar en un lenguaje diferente de programacin y ejecutarse en una computadora distinta; sin embargo, el algoritmo ser siempre el mismo. Dada la importancia del algoritmo en la ciencia de la computacin, un aspecto muy importante ser el diseo de algoritmos. El diseo de la mayora de los algoritmos requiere creatividad y conocimientos profundos de la tcnica de la programacin. Tcnicas de diseo de algoritmos

Algoritmos voraces (greedy): seleccionan los elementos ms prometedores del conjunto de candidatos hasta encontrar una solucin. En la mayora de los casos la solucin no es ptima. Algoritmos paralelos: permiten la divisin de un problema en sub problemas de forma que se puedan ejecutar de forma simultnea en varios procesadores. Algoritmos probabilsticos: algunos de los pasos de este tipo de algoritmos estn en funcin de valores pseudoaleatorios. Algoritmos no determinanticos: el comportamiento del algoritmo tiene forma de rbol y a cada paso del algoritmo puede bifurcarse a cualquier nmero de pasos

inmediatamente posteriores, adems todas las ramas se ejecutan simultneamente. Divide y vencers: dividen el problema en subconjuntos disjuntos obteniendo una solucin de cada uno de ellos para despus unirlas, logrando as la solucin al problema completo. Programacin dinmica: intenta resolver problemas disminuyendo su coste computacional aumentando el coste espacial. Ramificacin y acotacin: se basa en la construccin de las soluciones al problema mediante un rbol implcito que se recorre de forma controlada encontrando las mejores soluciones. Vuelta atrs (backtracking): se construye el espacio de soluciones del problema en un rbol que se examina completamente, almacenando las soluciones menos costosas.

2.4 Diseo algortmico de funciones. En este se explica detalladamente lo que realiza el algoritmo para resolver el problema planteado. en un diseo de algoritmo que sea complejo puede subdividirse en subprogramas para el estudio o la revisin de los pasos que lleven a la solucin y sea menos el ndice de errores que tenga al momento de la prueba, y a este diseo se le conoce como diseo modular pues es sencillo revisar cada proceso ya antes dividido para su rpida especificacin y prueba. Un algoritmo cuenta con un inicio y sus subprogramas llamados tambin diseo modular.

La funcin es una estructura autnoma similar a los mdulos. La diferencia radica en que la funcin se usa para devolver un solo valor de un tipo de dato simple a su punto de referencia. La funcin se relaciona especificando su nombre en una expresin, como si fuera una variable ordinaria de tipo simple. Las funciones se dividen en estndares y definidas por el usuario. Estndar: Son funciones proporcionadas por cualquier lenguaje de programacin de alto nivel, y se dividen en aritmticas y alfabticas. Definidas por el usuario: son funciones que puede definirlas el programador con el propsito de ejecutar alguna funcin especfica, y que por lo general se usan cuando se trata de hacer algn clculo que ser requerido en varias ocasiones en la parte principal del algoritmo.

Вам также может понравиться