El documento describe las diferentes fases del proceso de resolución de problemas mediante programación: 1) identificación del problema, 2) análisis del problema, 3) elaboración de algoritmos, diagramas de flujo y pseudocódigo para la solución, y 4) pruebas de escritorio de la solución. Explica cada una de estas fases y los pasos involucrados en ellas para llegar a desarrollar un programa que resuelva el problema planteado de manera efectiva.
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Unidad 1 margie
1. Unidad 1
Yessy Flores Hidalgo.
4°“A” Informática.
Profa. Margarita Romero
“Aplicar los principios de la programación en
la solución de problemas”
1. Desarrollar el proceso de solución de un problema.
El proceso de resolución de un problema con una computadora conduce a la
escritura de un programa y a su ejecución en la misma.
2. Aunque el proceso de diseñar programas es esencialmente un proceso creativo, se
pueden considerar una serie de fases o pasos comunes, que
generalmente deben seguir todos los programadores.
Fases en la resolución de un problema:
1ª) Fase de preparación,
Basada en la comprensión del problema. Supone un análisis e interpretación de los
datos disponibles.
2ª) Fase de producción,
El sujeto elabora y pone en marcha una estrategia: un conjunto de operaciones
para poder llegar a la solución.
3ª) Fase de enjuiciamiento,
Reflexión y evaluación de la solución generada comparándola con el criterio de
solución que nos propone el enunciado de la tarea.
1.1. Identificar el problema
Está dada por el enunciado del problema, el cuál debe ser claro y completo. Es
importante que conozcamos exactamente que se desea del computador; mientras
qué esto no se comprenda, no tiene caso pasar a la siguiente etapa.
Para identificar un problema, tenes que tener un enunciado con datos y una
incognita a resolver, entonces:
Identificar el problema
¿Cuál es el problema?, hay que construir modelos de simulación que han de
permitir decidir cual de varias propuestas es más eficaz para solucionar el problema
planteado, así pues éstos son modelos de gestión, no predictivos.
En primer lugar hay que identificar el problema con claridad, y describir los objetivos
del estudio con precisión. Aunque sea obvio, es muy importante una definición
correcta del problema real ya que todas las etapas siguientes gravitaran sobre ello.
Una vez definido el núcleo del problema, se ha de completar su descripción en base
3. a la aportación de conocimientos del tema . El resultado de esta fase ha de ser una
primera percepción de los "elementos" que tienen relación con el problema
planteado, las h-i-p-o-t-é-t-i-c-a-s relaciones existentes entre ellos, y su
comportamiento histórico.
La llamada "Referencia Histórica" recoge el comportamiento histórico de los
principales "elementos" que creemos que intervienen en el problema, cuantificados
cuando ello sea posible. Es la plasmación gráfica y numérica de la descripción
verbal del problema.
Los caminos son básicamente dos: la estadística y la intuición.
- La estadística o los métodos de cálculo numérico, son muy útiles para solucionar
muchos problemas en los que: 1.- hay abundantes datos históricos, y 2.- podemos
suponer que la realidad permanecerá estable. Por ejemplo, si quieres saber
cuantos coches pasarán hoy por la puerta de tu casa, sólo has de disponer de los
suficientes datos históricos y, si la calle no ha cambiado, podrás hacer una buena
aproximación.
- Tu intuición te ha llevado hasta donde estás, y por lo tanto no la menosprecies. En
muchos problemas ya intuimos acertadamente la solución como resultado de
nuestra experiencia o conocimientos. La intuición es barata y rápida, sigue
usándola siempre que puedas.
Una vez definido el problema veremos que hay muchos aspectos, o elementos,
relacionados con el mismo, directa o indirectamente, y a la vez relacionados entre
sí, de forma no necesariamente clara y transparente.
1.2. Análisis del problema
2. El problema tiene que estar definido y comprendido claramente,
3. una vez comprendido el problema se debe desarrollar el algoritmo
4. –procedimiento paso a paso de la solución del problema —
5. Por ultimo para resolver el problema mediante una computadora se necesita
codificar el algoritmo en un lenguaje de programación,
4. 6. BASIC, PASCAL, CABOL, FORTRAIN, ETC.
7. Es decir convertir el algoritmo a programa y comprobar que el programa
soluciona verdadera mente el problema.
8. El propósito del análisis del problema sirve al programador para llegar a la
comprensión de la naturaleza del problema.
9. El problema tiene que estar bien definido si se quiere llegar a una solución
satisfactoria del problema.
10. Para poder definir con precisión el problema se requiere que las
especificaciones de entrada y salida sean descritas con detalle.
11. Estos son los requisitos mas importantes.
1.3 Elaborar algoritmos de la solución del problema.
Aún cuando muchos algoritmos resulten simples al final, el proceso para llegar a
ellos puede ser muy complicado. Existen varios enfoques, que se pueden seguir
para elaborar un algoritmo a partir de la definición del problema:
Buscar similitud con otros problemas
Utilizar ejemplos conocidos
Utilizar algoritmos genéricos conocidos
Conceptualizar actividades
Descomponer en subproblemas
Al describir un algoritmo es necesario ser lo más preciso posible, de modo que sea
sencillo implementar el procedimiento especificado. En primera instancia, es
necesario definir una serie de operaciones básicas con las cuales se hará la
especificación. Luego, a partir de las operaciones definidas, se procede a enumerar
los pasos que componen el algoritmo. En esta etapa se pueden emplear los
componentes básicos de control de flujo (decisión e iteración).
La principal destreza que se debe desarrollar para escribir algoritmos consiste en
poder abstraer un problema y conceptualizarlo de modo que se pueda expresar su
solución en términos de las operaciones básicas que se definieron. Para esto, nos
apoyaremos en la descomposición en suproblemas más simples, las cuales
también requieren de cierto grado de conceptualización.
5. 1.4 Elaborar diagramas de flujo de la solución del problema.
Para su elaboración se siguen ciertas reglas:
Se escribe de arriba hacia abajo y de izquierda a derecha
Siempre se usan flechas verticales u horizontales, jamás curvas
Se debe evitar cruce de flujos
En cada paso se debe expresar una acción
concreta
Secuencia de flujo normal en una solución de
problema
Tiene un inicio
Una lectura o entrada de datos
El proceso de datos
Una salida de información
Un final
Son la representación gráfica de la solución algorítmica de un problema.
Para diseñarlos se utilizan determinados símbolos o figuras que representan una
acción dentro del procedimiento.
Utilizan unos símbolos normalizados, con los pasos del algoritmo escritos en el
símbolo adecuado y los símbolos unidos con flechas, denominadas líneas de flujo,
que indican el orden en que los pasos deben ser ejecutados.
6. 1.5. Crear Pseudocódigo de la solución del problema.
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 de la solución del problema
Se denomina prueba de escritorio a la comprobación que se hace de un
algoritmo para saber si está bien hecho. Esta prueba consiste en tomar
datos específicos como entrada y seguir la secuencia indicada en el
algoritmo hasta obtener un resultado, el análisis de estos resultados
indicará si el algoritmo está correcto o si por el contrario hay necesidad de
corregirlo o hacerle ajustes.