ALGORITMO
Además de todo lo expuesto, en el ámbito matemático, y cuando
estamos decididos a llevar a cabo la descripción de uno de esos algoritmos hay
que tener en cuenta que se puede efectuar mediante tres niveles. Así, en primer
lugar, nos encontramos con el de alto nivel, lo que es la descripción formal y
finalmente la tarea de implementación.
Asimismo tampoco podemos pasar por alto que los algoritmos se
pueden expresar a través de lenguajes de programación, pseudocódigo, el
lenguaje natural y también a través de los conocidos como diagramas de flujo.
Un manual de instrucciones para el funcionamiento de un
electrodoméstico y una serie de órdenes del jefe a un empleado para desarrollar
una cierta tarea también pueden incluir algoritmos.
Esta amplitud de significado permite apreciar que no existe
una definición formal y única de algoritmo. El término suele ser señalado como
el número fijo de pasos necesarios para transformar información de entrada (un
problema) en una salida (su solución). De todas formas, algunos algoritmos
carecen de final o no resuelven un problema en particular.
Existen ciertas propiedades que alcanzan a todos los
algoritmos, con excepción de los denominados algoritmos paralelos: el tiempo
secuencial (los algoritmos funcionan paso a paso), el estado abstracto (cada
algoritmo es independiente de su implementación) y la exploración acotada (la
transición entre estados queda determinada por una descripción finita y fija).
Cabe mencionar por último que los algoritmos son muy
importantes en la informática ya que permiten representar datos como secuencias
de bits. Un programa es un algoritmo que indica a la computadora qué pasos
específicos debe seguir para desarrollar una tarea.
DIAGRAMAS DE FLUJO
Un diagrama de flujo presenta generalmente un único punto de
inicio y un único punto de cierre, aunque puede tener más, siempre que cumpla
con la lógica requerida.
Las siguientes son acciones previas a la realización del
diagrama de flujo:
Identificar las ideas principales al ser incluidas en el
diagrama de flujo. Deben estar presentes el autor o responsable del proceso,
los autores o responsables del proceso anterior y posterior y de otros procesos
interrelacionados, así como las terceras partes interesadas.
Definir qué se espera obtener del diagrama de flujo.
Identificar quién lo empleará y cómo.
Establecer el nivel de detalle requerido.
Determinar los límites del proceso a describir.
Los pasos a seguir para construir el diagrama de flujo son:
Establecer el alcance del proceso a describir. De esta manera
quedará fijado el comienzo y el final del diagrama. Frecuentemente el comienzo
es la salida del proceso previo y el final la entrada al proceso siguiente.
Identificar y listar las principales actividades/subprocesos
que están incluidos en el proceso a describir y su orden cronológico.
Si el nivel de detalle definido incluye actividades menores,
listarlas también.
Identificar y listar los puntos de decisión.
Construir el diagrama respetando la secuencia cronológica y
asignando los correspondientes símbolos.
Asignar un título al diagrama y verificar que esté completo y
describa con exactitud el proceso elegido.
TIPOS DE DIAGRAMAS DE
FLUJO
Formato vertical: En él, el flujo y la secuencia de las
operaciones, va de arriba hacia abajo. Es una lista ordenada de las operaciones
de un proceso con toda la información que se considere necesaria, según su
propósito.
LÓGICA DE PROGRAMACIÓN
EJEMPLO
Descripción de alto nivel
Dado un conjunto finito C de números, se tiene el problema de
encontrar el número más grande. Sin pérdida de generalidad se puede asumir que
dicho conjunto no es vacío y que sus elementos están numerados como
c_0,c_1,\dots,c_n.
Es decir, dado un conjunto C=\{c_0,c_1,\dots,c_n\} se pide
encontrar m tal que x\leq m para todo elemento x que pertenece al conjunto C.
Para encontrar el elemento máximo, se asume que el primer
elemento (c_0) es el máximo; luego, se recorre el conjunto y se compara cada
valor con el valor del máximo número encontrado hasta ese momento. En el caso
que un elemento sea mayor que el máximo, se asigna su valor al máximo. Cuando
se termina de recorrer la lista, el máximo número que se ha encontrado es el
máximo de todo el conjunto.