Desarrollar el proceso de solución de un problema
Laura Michell Ojeda Estrada
1.Desarrollar el proceso de
solución de un problema
• La resolución de un problema mediante un ordenador consiste en el proceso que a partir de la descripción de un problema, expresado habitualmente en lenguaje natural y en términos propios del dominio del problema, permite desarrollar un programa que resuelva dicho problema.
Este proceso exige los siguientes pasos:
1) Análisis del problema.
2) Diseño o desarrollo de un algoritmo.
3) Transformación del algoritmo en un programa (codificación).
4) Ejecución y validación del programa.
Los dos primeros pasos son los más difíciles del proceso. Una vez analizado el problema y obtenido un algoritmo que lo resuelva, su transformación a un programa de ordenador es una tarea de mera traducción al lenguaje de programación deseado.
1.1 Identificar el problema
• Identificar el problema es cuando nos damos cuenta de que
algo no funciona correctamente, como por
decir un programa que no realice la tarea que debe de hacer, o en otro caso aun ni si quiera tenemos el programa y
necesitamos uno que nos ayude a la captura
y clasificación de ciertos datos, allí es cuando nos damos
cuenta de que tenemos un problema.
1.2 Análisis del problema
• El problema tiene que estar definido y comprendido claramente,
• una vez comprendido el problema se debe desarrollar el algoritmo
• –procedimiento paso a paso de la solución del problema —
• Por ultimo para resolver el problema mediante una computadora se necesita codificar el algoritmo en un lenguaje de programación,
• BASIC, PASCAL, CABOL, FORTRAIN, ETC.• Es decir convertir el algoritmo a programa y
comprobar que el programa soluciona verdadera mente el problema.
• El propósito del análisis del problema sirve al
programador para llegar a la comprensión de la naturaleza del problema.
• El problema tiene que estar bien definido si se
quiere llegar a una solución satisfactoria del
problema.
• Para poder definir con precisión el problema se
requiere que las especificaciones de entrada y
salida sean descritas con detalle.
• Estos son los requisitos mas importantes.
1.3 Elaborar algoritmos en la solucionde problemas
• El propósito del análisis del problema sirve al programador para llegar a la comprensión de la naturaleza del problema.
• El problema tiene que estar bien definido si se quiere llegar a una solución satisfactoria del problema.
• Para poder definir con precisión el problema se requiere que las especificaciones de entrada y salida sean descritas con detalle.
• Estos son los requisitos mas importantes.
• Describir las operaciones puestas en juego (acciones, instrucciones, comandos,.)
• •Describir los objetos manipulados por el algoritmo (datos/informaciones)
• •Controlar la realización de las acciones descritas, indicando la forma en que estas se organizan en el tiempo.
• Para poder describir cualquier tipo de acción de las que intervienen en un algoritmo, diversos autores proponen el uso de un conjunto de construcciones lógicas (secuencia, decisión e iteración) con las que es posible escribir cualquier programa.
1.4 Elaborar diagramas de flujo de la solución de un problema
• Una vez que sabemos cómo resolver
el problema, pasamos a dibujar
gráficamente la lógica de la
alternativa seleccionada. Eso es
precisamente un Diagrama de Flujo:
• la representación gráfica de una secuencia lógica de pasos a cumplir por el computador para producir un resultado esperado.
• La experiencia nos ha demostrado que resulta muy útil trasladar esos pasos lógicos planteados en el diagrama a frases que indiquen lo mismo; es decir, hacer una codificación del programa pero utilizando instrucciones en Español.
• Cuando logremos habilidad para
desarrollar programas, es posible que
no elaboremos el diagrama de flujo;
en su lugar podremos hacer
directamente el pseudocódigo del
programa.
El pseudocódigo está pensado para
facilitar a las personas el
entendimiento de un algoritmo, y por
lo tanto puede omitir detalles
irrelevantes que son necesarios en una
implementación. Programadores
diferentes suelen utilizar convenciones
distintas, que pueden estar basadas en
la sintaxis de lenguajes de
programación concretos.
Sin embargo, el pseudocódigo en general es comprensible sin necesidad de conocer o utilizar un entorno de programación específico, y es a la vez suficientemente estructurado para que su implementación se pueda hacer directamente a partir de él.
• El pseudocódigo es una descripción de alto nivel de
un algoritmo que emplea una
mezcla de lenguaje natural
con algunas convenciones
sintácticas propias de
lenguajes de
programación, como
asignaciones, ciclos y
condicionales, aunque no
está regido por ningún
estándar.
• Es utilizado para describir algoritmos en libros y publicaciones científicas, y como producto intermedio durante el desarrollo de un algoritmo, como los diagramas de flujo, aunque presentan una ventaja importante sobre estos, y es que los algoritmos descritos en pseudocódigo requieren menos espacio para representar instrucciones complejas.
1.6 Prueba de escritorio para la solución de un problema
• Para cerciorarnos de que el diagrama (y/o el pseudocódigo) esta bien, y, para garantizar que el programa que codifiquemos luego también funcione correctamente, es conveniente someterlo a una Prueba de Escritorio.
•