Ir al contenido principal

LA RESOLUCIÓN DE PROBLEMAS Y EL USO DEL ORDENADOR

Antes de entrar en la codificación de la resolución de un problema, hemos de contar con una idea bastante precisa de cómo podemos llegar a esta solución. La experiencia personal de todos nosotros nos dice que la sistematización para la resolución de problemas no es fácil.


Esta sistemática, de forma muy esquematizada, se puede dividir en tres fases:
  1. Análisis del problema
  2. Diseño del algoritmo
  3. Programación del algoritmo
1. ANÁLISIS DEL PROBLEMA
El objetivo del análisis del problema, es ayudar al programador a llegar a una cierta compresión de la naturaleza del mismo. Este análisis supone, en particular, la superación de una serie de pasos:
2. DISEÑO DEL ALGORITMO
Diseñar un algoritmo puede ser una tarea difícil y su aprendizaje no es inmediato, ya que requiere una buena dosis de experiencia y creatividad. Para diseñar algoritmos hay que tener presente los requisitos siguientes:
  • Indicar el orden de realización de cada paso,
  • Estar definido sin ambigüedad y
  • Ser finito.

Durante el diseño es posible y aconsejable, realizar comparaciones entre algoritmos que resuelven el mismo problema. La bondad de un algoritmo puede medirse por dos factores:
Diseño Descendente o Modular
Los problemas complejos se pueden resolver más eficazmente cuando se descompone en subproblemas que sean más fáciles de resolver al original. Al procedimiento de descomposición de un problema en subproblemas más simples, (llamadas módulos) para, a continuación, seguir dividiendo estos subproblemas en otros más simples, se le denomina diseño descendente. Las ventajas más importantes de este tipo de diseño son:
Refinamiento Por Pasos
Durante el diseño, entenderemos por refinamiento por pasos, la metodología por la que en un primer esbozo del algoritmo nos limitamos a señalar o describir un reducido número de pasos, que deberán ser expresados con mayor detalle posteriormente.
3. PROGRAMACIÓN DEL ALGORITMO
Una vez que el algoritmo está diseñado y representado, se debe pasar a la fase de resolución práctica del problema con el ordenador. Esta fase se descompone a su vez en la siguientes subfases:
REPRESENTACIÓN DE ALGORITMOS
Un algoritmo es algo puramente conceptual que necesita una forma de representación, bien para comunicarlo a otra persona bien para ayudar a convertirlo en un programa. Por ello existen diferentes métodos que permiten que se pueda independizar el algoritmo de su correspondiente codificación. Veamos dos de ellos:
PSEUDOCÓDIGO
ORGANIGRAMAS
Los organigramas o diagramas de flujo son herramientas gráficas utilizadas tanto para representar algoritmos, como en la ayuda en el diseño de programas. 
 Esta imagen representa, en forma de organigrama, el algoritmo del pseudocódigo expresado en la sección anterior.

Comentarios