1. SAUL MERARI
SALINAS MARTINEZ
UNIDAD 1: “1. Desarrollar el proceso de solución de un
problema.”
1.1.Identificar el problema:
1) El primer paso es identificar y reconocer el problema.
Hay que encontrar donde está la desviación y esto es
complicado porque normalmente está oculto y solo
permite ver los síntomas. En esta fase hay que definir
claramente el problema: delimitarlo, cuantificarlo y no
sobreestimarlo o subestimarlo.
2) Recoger toda la información necesaria es la siguiente
actividad que debemos realizar. Han de ser siempre datos
(cuanto más concretos mejor) que resulten necesarios,
fiables y relevantes.
3) Por último se debe analizar las causas del problema,
avanzar las posibles conexiones entre ellas y elegir la que
juzguemos más probable.
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
2. SAUL MERARI
SALINAS MARTINEZ
correcta del problema real ya que todas las etapas
siguientes gravitaran sobre ello. También es de gran
utilidad para ajustar la inversión de tiempo y dinero
aplicados a la creación del modelo.
El problema es un obstáculo que se interpone en el
camino, es la desviación que hay entre lo que debería ser
(lo proyectado) y lo que en realidad es. El objetivo de
solucionarlo es volver al camino que nunca se debió de
perder.
Una buena metodología implica disponer de la información
necesaria, establecer alternativas, medir los riesgos y
establecer los sistemas de control oportunos.
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 pasó a paso de la solución del problema —
3. SAUL MERARI
SALINAS MARTINEZ
Por último 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 más 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
4. SAUL MERARI
SALINAS MARTINEZ
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
subproblemas más simples, las cuales también requieren de
cierto grado de conceptualización.
1.4. Elaborar diagramas de flujo de la solución del problema:
Se escribe de arriba hacia abajo y de izquierda a derecha
Siempre se usan flechas verticales u horizontales, jamás
5. SAUL MERARI
SALINAS MARTINEZ
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.
1.5. Crear Pseudocódigo de la solución del problema:
6. SAUL MERARI
SALINAS MARTINEZ
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.
7. SAUL MERARI
SALINAS MARTINEZ
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.