You are on page 1of 3

1.5.

CONCEPTO Y CARACTERISTICAS DE ALGORITMOS

El objetivo fundamental de este manual es ensear a resolver problemas mediante una computadora. El
programador de computadora es antes que nada una persona que resuelve problemas, por lo que para
llegar a ser un programador eficaz se necesita aprender a resolver problemas de un modo riguroso y
sistemtico.

Problema Diseo del Programa de


Algoritmo Computadora

Figura 6. Resolucin de un Programa


Los pasos para la resolucin de un problema son:
1. Diseo del algoritmo, que describe la secuencia ordenada de pasos sin ambigedades que
conducen a la solucin de un problema dado(anlisis del problema y desarrollo del algoritmo)
2. Expresar el algoritmo como un programa en un lenguaje de programacin adecuado(Fase de
codificacin)
3. Ejecucin y validacin del programa por la computadora.

Para llegar a la realizacin de un programa es necesario el diseo previo de un algoritmo, de modo


que sin algoritmo no puede existir un programa.
Los algoritmos son independientes tanto del lenguaje de programacin en que se expresan como de
la computadora que los 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.
En la ciencia de la computacin y en la programacin, los algoritmos son ms importantes que los
lenguajes de programacin o las computadoras. Un lenguaje de programacin es tan slo un medio para
expresar un algoritmo y una computadora es slo un procesador para ejecutarlo. Por tanto el lenguaje de
programacin como la computadora son los medios para obtener un fin: conseguir que el algoritmo se
ejecute y se efecte el proceso correspondiente.
El diseo de la mayora de los algoritmos requiere creatividad y conocimientos profundos de la
tcnica de la programacin. En esencia, la solucin de un problema se puede expresar mediante un
algoritmo.

1.5.1. Caractersticas de los Algoritmos

Las caractersticas fundamentales que debe cumplir todo algoritmo son:


Un algoritmo debe ser preciso e indicar el orden de realizacin de cada paso.
Un algoritmo debe estar definido. Si se sigue un algoritmo dos veces, se debe obtener el
mismo resultado cada vez.
Un algoritmo debe ser finito. Si se sigue un algoritmo, se debe terminar en algn
momento; o sea, debe tener un nmero finito de pasos.
Precisin
Definitud o determinismo
Finitud

Dada una cantidad de datos de entrada de un algoritmo, se dice que la cantidad de un recurso usada
por dicho algoritmo para su ejecucin determina la complejidad del algoritmo respecto a tal
recurso. Cuando se implementa un algoritmo en un computador digital, los recursos con los que se
cuenta son tiempo de proceso y memoria. Por lo tanto, a un algoritmo implementado en un
computador digital se le pueden calcular sus complejidades temporal y espacial
La definicin de un algoritmo debe describir tres partes: Entrada, proceso, y Salida.
1.5.2. Diseo del Algoritmo

Una computadora no tiene capacidad para solucionar problemas ms que cuando se le proporciona
los sucesivos pasos a realizar. Estos pasos sucesivos que indican las instrucciones a ejecutar por la
mquina constituyen, como ya conocemos, el algoritmo.
La informacin que se proporciona al algoritmo constituye la entrada y la informacin
producida por el algoritmo constituye su salida. Los problemas complejos se pueden resolver ms
eficazmente con la computadora cuando se rompen en subproblemas que sean ms fciles de
solucionar que el original. As el problema de encontrar la superficie y la longitud de un crculo se
puede dividir en tres problemas ms simples o subproblemas (Figura 7)

Superficie y
longitud de
circunferencia

Entrada de Clculo de Clculo de Salida de


datos superficie longitud (L) Resultados
(S)

Entrada
Radio (R) S = PI * R2 L = 2 * PI *
R
Salida Salida Salida
(R) (S) (L)

Figura 7. Refinamiento de un Algoritmo

Tras los pasos anteriores (diseo descendente y refinamiento por pasos) es preciso representar el
algoritmo mediante una determinada herramienta de programacin: diagrama de flujo,
pseudocdigo o diagrama N S.
As pues, el diseo del algoritmo se descompone en las fases recogidas en la Figura 8:
Diseo de un
algoritmo

Diseo Refinamiento Herramientas de


descendente Por casos programacin (3)
(1) (2) -diagrama de flujo
-pseudocdigo
-diagrama N-S
Figura 8. Fases del Diseo de un Algoritmo

You might also like