Anda di halaman 1dari 5

Unidad 2 desarrollo de lgica

algortmica
INTRODUCCION
Se denomina algoritmo a un grupo finito de operaciones organizadas de
manera lgica y ordenada que permite solucionar un determinado problema. Se
trata de una serie de instrucciones o reglas establecidas que, por medio de una
sucesin de pasos, permiten arribar a un resultado o solucin.
Segn los expertos en matemtica, los algoritmos permiten trabajar a partir de
un estado bsico o inicial y, tras seguir los pasos propuestos, llegar a
una solucin. Cabe resaltar que, si bien los algoritmos suelen estar asociados
al mbito matemtico (ya que permiten, por citar casos concretos, averiguar el
cociente entre un par de dgitos o determinar cul es el mximo comn divisor
entre dos cifras pertenecientes al grupo de los enteros), aunque no siempre
implican la presencia de nmeros.
Asimismo tampoco podemos pasar por alto que los algoritmos se pueden
expresar a travs de lenguajes de programacin, pseudocdigo, el lenguaje
natural y tambin a travs de los conocidos como diagramas de flujo.
Un manual de instrucciones para el funcionamiento de un electrodomstico y
una serie de rdenes del jefe a un empleado para desarrollar una cierta tarea
tambin pueden incluir algoritmos.
Esta amplitud de significado permite apreciar que no existe una definicin
formal y nica de algoritmo. El trmino suele ser sealado como el nmero fijo
de pasos necesarios para transformar informacin de entrada (un problema) en
una salida (su solucin). 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
excepcin de los denominados algoritmos paralelos: el tiempo secuencial (los
algoritmos funcionan paso a paso), el estado abstracto (cada algoritmo es
independiente de su implementacin) y la exploracin acotada (la transicin
entre estados queda determinada por una descripcin finita y fija).
Cabe mencionar por ltimo que los algoritmos son muy importantes en
la informtica ya que permiten representar datos como secuencias de bits. Un
programa es un algoritmo que indica a la computadora qu pasos especficos
debe seguir para desarrollar una tarea.

2.1 Metodologa para la solucin de problemas


El proceso de resolucin de un problema con una computadora conduce a la
escritura de un programa y su ejecucin en la misma. Aunque el proceso de
disear programas es esencialmente un proceso creativo, se pueden
considerar una serie de fases o pasos comunes, que generalmente deben
seguir todos los programadores.
Estas etapas son las siguientes:
Definicin del problema.
Anlisis de los datos.
Diseo de la solucin.
Codificacin.
Prueba y depuracin.
Documentacin.
Mantenimiento.
Definicin del problema.

Est dada en s por el enunciado del problema, el cual debe ser claro y
complejo. Es importante que conozcamos exactamente que se desea obtener
al final del proceso ; mientras esto no se comprenda no puede pasarse a la
siguiente etapa.

Anlisis de los datos.


Para poder definir con precisin el problema se requiere que las
especificaciones de entrada y salida sean descritas con detalle ya que esto es
un requisito para lograr una solucin eficaz.
Una vez que el problema ha sido definido y comprendido, deben analizarse los
siguientes aspectos:

Los resultados esperados.


Los datos de entrada disponibles.
Herramientas a nuestro alcance para manipular los datos y alcanzar un
resultado (frmulas, tablas, accesorios diversos).

Una medida aconsejable para facilitar esta etapa consiste en colocarnos en


lugar de la computadora deduciendo los elementos que necesitaremos para
alcanzar el resultado.

Diseo de la solucin.

Una computadora no tiene capacidad para solucionar problemas ms que


cuando se le proporcionan los sucesivos pasos a realizar, esto se refiere a la
obtencin de un algoritmo que resuelva adecuadamente el problema. En caso
de obtenerse varios algoritmos, seleccionar uno de ellos utilizando criterios ya
conocidos.
Esta etapa incluye la descripcin del algoritmo resultante en un lenguaje
natural, de diagrama de flujo o natural de programacin.
Como puede verse, solo se establece la metodologa para alcanzar la solucin
en forma conceptual, es decir ; sin alcanzar la implementacin en el sistema de
cmputo.
De acuerdo al ejemplo 2.1 tenemos que la informacin proporcionada
constituye su entrada y la informacin producida por el algoritmo constituye su
salida. Los problemas complejos se pueden resolver ms eficazmente por la
computadora cuando se dividen en subproblemas que sean ms fcil de
solucionar.
El problema de clculo de la longitud y superficie de un crculo se puede
descomponer en subproblemas ms simples :

Leer datos de entrada.


Calcular superficie y longitud.
Escribir resultados (datos de salida).

Codificacin.
Se refiere a la obtencin de un programa definitivo que pueda ser comprensible
para la mquina. Incluye una etapa que se reconoce como compilacin.
Si la codificacin original se realiz en papel, previo a la compilacin deber
existir un paso conocido como transcripcin.

Programa Fuente
Est escrito en un lenguaje de programacin. (pascal, C++,Visual Fox, Visual
Basic, etc).

Es entendible por el programador.

Programa Ejecutable

Est en lenguaje mquina.


Entendible por la mquina.
Prueba y depuracin.

Una vez que se ha obtenido el programa ejecutable, este es sometido a prueba


a fin de determinar si resuelve o no el problema planteado en forma
satisfactoria.
Las pruebas que se le aplican son de diversa ndole y generalmente dependen
del tipo de problema que se est resolviendo. Comnmente se inicia la prueba
de un programa introduciendo datos vlidos, invlidos e incongruentes y
observando como reacciona en cada ocasin.
El proceso de depuracin consiste en localizar los errores y corregirlos en caso
de que estos existan. Si no existen errores, puede entenderse la depuracin
como una etapa de refinamiento en la que se ajustan detalles para optimizar el
desempeo del programa.

Documentacin.
Debido a que el programa resultante en esta etapa se encuentra totalmente
depurado (sin errores), se procede a la utilizacin para resolver problemas del
tipo que dio origen a su diseo. En vista de que esta utilizacin no podr ser
supervisada en todas las ocasiones por el programador, debe crearse un
manual o gua de operacin que indique los pasos a seguir para utilizar el
programa.

Mantenimiento.
Se refiere a las actualizaciones que deban aplicarse al programa cuando las
circunstancias as lo requieran. Este programa deber ser susceptible de ser
modificado para adecuarlo a nuevas condiciones de operacin.
Cualquier actualizacin o cambio en el programa deber reflejarse en su
documentacin.