FUNDAMENTOS DE PROGRAMACIÓN
![]() |
| Proceso de solución de un problema |
Solución de problemas
Es el proceso a través del cual podemos reconocer las señales
que identifican la presencia de una dificultad, anomalía o entorpecimiento del desarrollo
normal de una tarea, recolectar la información necesaria para resolver los problemas
detectados y escoger e implementar las mejores alternativas de solución, ya sea de
manera individual o grupal. Aplicada al mundo laboral, la resolución de problemas permite mantener el correcto
desarrollo de las actividades, tareas o procesos, y estar preparado para enfrentar de
manera eficiente los entorpecimientos.
¿En qué consiste?
La resolución de problemas utilizando como herramienta una computadora no se
resume únicamente en la escritura de un programa, sino que es masa compleja. Siguiendo las siguientes etapas:
- Análisis del problema
![]() |
| Análisis previo del programa |
Primeramente se analiza el problema en su contexto del mundo real. Deben
obtenerse los requerimientos del usuario. Éste análisis permite precisar el problema para dar un objetivo a resolver. Dos componentes
importantes de este modelo son los datos a utilizar y las transformaciones de los
mismos.
- Diseño de una solución
![]() |
| Diseño de la solución |
Una técnica de diseño en la resolución de problemas consiste en la
identificación de las partes que componen el problema y la manera
en que se relacionan. Cada uno de estos subproblemas debe tener un objetivo
específico. La integración de
las soluciones de los subproblemas es lo que permitirá obtener la solución buscada.
- Especificación de algoritmos
La solución de cada subproblema debe ser especificada a través de un algoritmo.
Esta etapa busca obtener la secuencia de pasos a seguir para resolver el problema. Para ello es fundamental la elección de un buen algoritmo.
- Escritura de programas
![]() |
| Algoritmos |
Un programa escrito en
un lenguaje de programación determinado es traducido
automáticamente al lenguaje de máquina de la computadora que lo va a ejecutar.
Esta traducción, denominada compilación, permite detectar y corregir los errores
sintácticos que se cometan en la escritura del programa.
- Verificación
![]() |
| Ventana de verificación |
Una vez que se tiene un programa escrito en un lenguaje de programación se debe
verificar que su
ejecución produce el resultado deseado, utilizando datos
representativos del problema real.
La facilidad de verificación y la depuración de errores de
funcionamiento del programa conducen a una mejor calidad del sistema y es un
objetivo central de la Ingeniería de Software.
Solución de problemas según POLYA
George Pólya fue un gran matemático fue la clave en la Resolución de Problemas y es considerado el
pionero o gestor de las primeras etapas de esta temática.
La posición de Pólya respecto a la Resolución de Problemas se basa en una
perspectiva global y no restringida a un punto de vista matemático.
Método de los cuatro pasos

- Comprender el Problema
Ésta es la etapa para determinar la incógnita, los datos, las condiciones, y
decidir si esas condiciones son suficientes, no redundantes ni contradictorias. Donde se plantea las siguientes preguntas: ¿Cuál es la incógnita?, ¿Cuáles son los datos?, ¿Cuál es la condición?, ¿Es la condición suficiente para determinar la incógnita?, ¿Es insuficiente?, ¿Es redundante?, ¿Es contradictoria?
- Concebir un Plan
Para Pólya en esta etapa del plan el problema debe relacionarse con problemas
semejantes. También debe relacionarse con resultados útiles, y se debe determinar si se
pueden usar problemas similares o sus resultados.
- Ejecución del Plan
En ésta etapa es primordial examinar todos los detalles y es parte importante
recalcar la diferencia entre percibir que un paso es correcto y, por otro lado, demostrar
que un paso es correcto. Es decir, es la diferencia que hay entre un problema por
resolver y un problema por demostrar.
- Examinar la Solución o etapa de la visión retrospectiva
En ésta fase del proceso
es muy importante detenerse a observar qué fue lo que se hizo; se necesita verificar el
resultado y el razonamiento seguido. Estas cuestiones dan una retroalimentación muy interesante para resolver otros
problemas futuros, Pólya plantea que cuando se resuelve un problema, también, se están creando habilidades posteriores para resolver
cualquier tipo de problema.
Para comprender mejor lo dicho por Pólya les recomiendo ir al siguiente vídeo:Resolución de problemas - George Pólya
Algoritmo. Definición
Se puede definir como una secuencia de instrucciones que representan un modelo de solución para determinado tipo de problemas o un conjunto de instrucciones que realizadas en orden conducen a obtener la solución de un problema.
Los algoritmos son independientes de los lenguajes de programación, en cada problema el algoritmo puede escribirse y luego ejecutarse en un lenguaje diferente de programación, son la infraestructura de cualquier solución, luego escrita en cualquier lenguaje de programación.
![]() |
| Algoritmos en la programación |
Diagrama de flujo
El diagrama de flujo o diagrama de actividades, también conocido como flujograma es la representación gráfica del algoritmo o proceso.
Los diagramas de flujo se pueden aplicar a todos los aspectos de cualquier proceso, desde el flujo de materiales hasta los pasos para realizar una venta o darle mantenimiento a un producto.
Tipos de diagramas de flujo
- Matricial
Los agentes que intervienen en el proceso aparecen en la cabecera del dibujo y las actividades desempeñadas se encuentran subordinadas a ellos. Se pueden construir de arriba abajo o de izquierda a derecha. Se recomiendan los primeros.
- Lineal
Las actividades del proceso aparecen secuenciadas una debajo de la otra. Es más fácil de construir y es recomendable si los agentes de proceso son mayores a seis, pero aporta menos información.
Elementos de los diagramas de flujo
Te dejo éste otro link para aclarar tus posibles dudas: Fundamentos de programación
Referencias:








Comentarios
Publicar un comentario