SlideShare una empresa de Scribd logo
1 de 4
Descargar para leer sin conexión
1
FASES DE LA RESOLUCIÓN DE PROBLEMAS CON LA COMPUTADORA
1. Análisis del problema: en esta fase se determina que hará el programa. Consiste
entonces en una clara definición donde se contemple exactamente lo que la
aplicación debe hacer y que necesita para hacerlo. Para ello se tratar de entender
comprender el contexto del problema en cuestión, recopilar toda la información
necesaria para dicha comprensión y como las partes que lo componen afectan. Mas
en concreto, si un programa ejecuta una serie de instrucciones que modifican su
estado, en esta fase se determina a que estado se tiene que llegar, dado un estado
inicial, para que se garantice la resolución del problema. Para la ejecución de esta
fase es recomendable seguir los pasos que a continuación se mencionan:
 Confirmación de que el problema existe realmente: se deben identificar y
recoger los datos requeridos para confirmar que el problema identificado es
real. Para comprender un problema los mismos datos deben indicar quién,
qué, cuándo, dónde y por qué el problema es más grave, así como ciertas
preguntas relacionadas con cuánto, de qué tamaño, cuántas o cuántos.
 Presentación gráfica de los datos: esta forma de presentación de los datos
permite usar la información con mayor facilidad.
 Identificación de las causas potenciales: es necesario identificar y poner de
manifiesto todas las causas potenciales que están contribuyendo a la
existencia del problema bajo consideración.
2. Diseño del Algoritmo: en esta fase se determina como hace el programa la tarea
solicitada. Para ello se utilizan los Algoritmos, que consisten en una secuencia
ordenada de pasos que conducen a la resolución de un problema dado,
sin ambigüedades y expresado en lenguaje natural. Para diseñar un algoritmo se
debe comenzar por identificar las tareas más importantes para resolver el problema y
disponerlas en el orden en el que han de ser ejecutadas. Los pasos en esta primera
descripción pueden requerir una revisión adicional antes de que podamos obtener un
algoritmo claro, preciso y completo. En un algoritmo se deben de considerar tres
partes:
 Entrada: Información dada al algoritmo.
2
 Proceso: Operaciones o cálculos necesarios para encontrar la solución del
problema.
 Salida: Respuestas dadas por el algoritmo o resultados finales de los
procesos realizados.
Al diseñar algoritmos para escribir un programa, es necesario conocer determinadas
estructuras cuyo objetivo es controlar su ejecución. Estas, se denominan Estructuras
e Control, las cuales, permiten modificar el flujo u orden de ejecución de los distintos
pasos de un programa. Las Estructuras de Control pueden ser de tres tipos:
 Estructura Secuencial: es aquélla en la
que una acción sigue a otra en secuencia.
Las tareas se suceden de tal modo que la
salida de una es la entrada de la siguiente
y así sucesivamente hasta el fin del
proceso. La estructura secuencial tiene
una entrada y una salida.
 Estructuras Selectivas: en estas se evalúa una condición y en función del
resultado de la misma se realiza una opción u otra. Las condiciones se
especifican usando expresiones lógicas.
3
 Estructuras Repetitivas: consisten en la repetición de una secuencia de
instrucciones un número determinado de veces hasta que una condición de
terminación se cumpla.
También se hace necesario diseñar algoritmos bajo algún método que permita guiar
este proceso: entre estos dos métodos encontramos:
 Diseño descendente: los problemas complejos se pueden resolver mas
eficazmente cuando se descomponen en subproblemas que sean mas fáciles
de resolver que el original. De esta manera, un problema complejo se divide
en módulos o partes más simples, cuya resolución se hace más sencilla.
 Refinamiento por Pasos: consiste en describir un reducido número de pasos,
que deberán ser expresados con mayor detalle posteriormente. Tras esta
primera descripción, estos se especifican con mayor minuciosidad, de forma
más extensa y con más pasos específicos.
3. Implementación del Algoritmo: a partir del diseño del algoritmo, este se expresa
en términos de un lenguaje de programación concreto y se ejecuta para probar su
correcto funcionamiento. Para ello se realizan los siguientes pasos:
 Codificación: es la conversión de un algoritmo en instrucciones de un lenguaje
de programación. Dicha conversión consiste en la escritura de la
representación del algoritmo de acuerdo con la sintaxis del lenguaje de
4
programación escogido, ya que únicamente las instrucciones sintacticamente
correctas pueden ser interpretadas por el computador.
 Documentación: consiste en añadir a los programas suficiente información
mediante comentarios o etiquetas de texto que expliquen lo que hace, punto
por punto, de forma que no sólo los ordenadores sepan qué hacer, sino que
además los humanos entiendan qué están haciendo y por qué.
 Compilación: es el proceso de traducción de un programa escrito en un
lenguaje de programación, para generar otro en un lenguaje que la
computadora sea capaz de entender. Una vez que el algoritmo se ha
convertido en un programa fuente, debe ser traducido a lenguaje máquina. Si
al compilar el programa fuente se presentan errores (errores de compilación),
es necesario volver a editar el programa, corregir los errores y compilar de
nuevo.
 Ejecución: tras la codificación del programa, este deberá ejecutarse en un
computador. El resultado de esta primera ejecución es incierto, ya que existe
una alta posibilidad de que aparezcan errores.
 Verificación: consiste en comprobar que el programa realiza las tareas para
las que se ha diseñado y produce el resultado correcto y esperado.
 Depuración: una vez que el programa se ejecuta, es probable que arroje
errores de lógicos o de sintaxis originados por diversas causas. La
Depuración es el proceso de identificar dichos errores y corregirlos.

Más contenido relacionado

La actualidad más candente

INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS
INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOSINGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS
INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOSLenin Acosta Mata
 
Algoritmos y metodología para la solución de problemas
Algoritmos y metodología para la solución de problemasAlgoritmos y metodología para la solución de problemas
Algoritmos y metodología para la solución de problemasMartin Pacheco
 
Analizador Sintáctico
Analizador SintácticoAnalizador Sintáctico
Analizador SintácticoPablo Guerra
 
Metodología para Sistemas de Información(MEDSI) por Jonas Montilva
Metodología para Sistemas de Información(MEDSI) por Jonas MontilvaMetodología para Sistemas de Información(MEDSI) por Jonas Montilva
Metodología para Sistemas de Información(MEDSI) por Jonas Montilvadeywilliams
 
Lenguajes de programacion tema 2_compiladores e interpretes
Lenguajes de programacion tema 2_compiladores e interpretesLenguajes de programacion tema 2_compiladores e interpretes
Lenguajes de programacion tema 2_compiladores e interpretesIsrael Castillo Cruz
 
Crisis del software
Crisis del softwareCrisis del software
Crisis del softwareecasteloc
 
Estudio de factibilidad técnica (enfoque informático)
Estudio de factibilidad técnica  (enfoque informático)Estudio de factibilidad técnica  (enfoque informático)
Estudio de factibilidad técnica (enfoque informático)Ronald Rivas
 
Unidad 4 Metodología para el Análisis y Planteamiento de Problemas
Unidad 4 Metodología para el Análisis y Planteamiento de ProblemasUnidad 4 Metodología para el Análisis y Planteamiento de Problemas
Unidad 4 Metodología para el Análisis y Planteamiento de ProblemasYenny Salazar
 
Fundamentos de Ingenieria de Software - Unidad 1 modelo de negocios
Fundamentos de Ingenieria de Software - Unidad 1 modelo de negociosFundamentos de Ingenieria de Software - Unidad 1 modelo de negocios
Fundamentos de Ingenieria de Software - Unidad 1 modelo de negociosJosé Antonio Sandoval Acosta
 
Metodología open up ágil y tradicional
Metodología open up ágil y tradicionalMetodología open up ágil y tradicional
Metodología open up ágil y tradicionalCarmelo Hernandez
 
TAREAS DE LA ING. DE REQUISITOS
TAREAS DE LA ING. DE REQUISITOSTAREAS DE LA ING. DE REQUISITOS
TAREAS DE LA ING. DE REQUISITOSxinithazangels
 
Modelos de desarrollo del software
Modelos de desarrollo del softwareModelos de desarrollo del software
Modelos de desarrollo del softwareRenny Batista
 
Fundamentos del Diseño de Software
Fundamentos del Diseño de SoftwareFundamentos del Diseño de Software
Fundamentos del Diseño de SoftwareNelson Guanipa
 
Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1Osiris Mirerus
 
Unidad 1.3 Analisis De Requerimientos
Unidad 1.3 Analisis De RequerimientosUnidad 1.3 Analisis De Requerimientos
Unidad 1.3 Analisis De RequerimientosSergio Sanchez
 

La actualidad más candente (20)

Top down
Top downTop down
Top down
 
INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS
INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOSINGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS
INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS
 
Algoritmos y metodología para la solución de problemas
Algoritmos y metodología para la solución de problemasAlgoritmos y metodología para la solución de problemas
Algoritmos y metodología para la solución de problemas
 
Metodología Clásica
Metodología ClásicaMetodología Clásica
Metodología Clásica
 
Analizador Sintáctico
Analizador SintácticoAnalizador Sintáctico
Analizador Sintáctico
 
Metodología para Sistemas de Información(MEDSI) por Jonas Montilva
Metodología para Sistemas de Información(MEDSI) por Jonas MontilvaMetodología para Sistemas de Información(MEDSI) por Jonas Montilva
Metodología para Sistemas de Información(MEDSI) por Jonas Montilva
 
Lenguajes de programacion tema 2_compiladores e interpretes
Lenguajes de programacion tema 2_compiladores e interpretesLenguajes de programacion tema 2_compiladores e interpretes
Lenguajes de programacion tema 2_compiladores e interpretes
 
Crisis del software
Crisis del softwareCrisis del software
Crisis del software
 
Estudio de factibilidad técnica (enfoque informático)
Estudio de factibilidad técnica  (enfoque informático)Estudio de factibilidad técnica  (enfoque informático)
Estudio de factibilidad técnica (enfoque informático)
 
Interrupciones
InterrupcionesInterrupciones
Interrupciones
 
Unidad 4 Metodología para el Análisis y Planteamiento de Problemas
Unidad 4 Metodología para el Análisis y Planteamiento de ProblemasUnidad 4 Metodología para el Análisis y Planteamiento de Problemas
Unidad 4 Metodología para el Análisis y Planteamiento de Problemas
 
Fundamentos de Ingenieria de Software - Unidad 1 modelo de negocios
Fundamentos de Ingenieria de Software - Unidad 1 modelo de negociosFundamentos de Ingenieria de Software - Unidad 1 modelo de negocios
Fundamentos de Ingenieria de Software - Unidad 1 modelo de negocios
 
Metodología open up ágil y tradicional
Metodología open up ágil y tradicionalMetodología open up ágil y tradicional
Metodología open up ágil y tradicional
 
TAREAS DE LA ING. DE REQUISITOS
TAREAS DE LA ING. DE REQUISITOSTAREAS DE LA ING. DE REQUISITOS
TAREAS DE LA ING. DE REQUISITOS
 
Modelos de desarrollo del software
Modelos de desarrollo del softwareModelos de desarrollo del software
Modelos de desarrollo del software
 
Fundamentos del Diseño de Software
Fundamentos del Diseño de SoftwareFundamentos del Diseño de Software
Fundamentos del Diseño de Software
 
tecnicas de revisión del software
tecnicas de revisión del softwaretecnicas de revisión del software
tecnicas de revisión del software
 
Modelo de proceso especializado
Modelo de proceso especializadoModelo de proceso especializado
Modelo de proceso especializado
 
Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1
 
Unidad 1.3 Analisis De Requerimientos
Unidad 1.3 Analisis De RequerimientosUnidad 1.3 Analisis De Requerimientos
Unidad 1.3 Analisis De Requerimientos
 

Destacado

Resolucion De Problemas Con Computadora
Resolucion De Problemas Con ComputadoraResolucion De Problemas Con Computadora
Resolucion De Problemas Con ComputadoraBrivé Soluciones
 
Informatica II - 2 Metodologia de Solucion de Problemas
Informatica II - 2 Metodologia de Solucion de ProblemasInformatica II - 2 Metodologia de Solucion de Problemas
Informatica II - 2 Metodologia de Solucion de ProblemasGabriel Ruiz
 
Fases de programacion
Fases de programacionFases de programacion
Fases de programacionbrayan_2012
 
3 AnáLisis Del Problema
3 AnáLisis Del Problema3 AnáLisis Del Problema
3 AnáLisis Del Problemajernestomejia
 
Tema 3 metodología para la solución de problemas
Tema 3  metodología para la solución de problemasTema 3  metodología para la solución de problemas
Tema 3 metodología para la solución de problemasLincoln School
 
Algoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionAlgoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionBoris Salleg
 
Método De Solución De Problemas
Método De Solución De ProblemasMétodo De Solución De Problemas
Método De Solución De ProblemasPriscilla Najera
 
Identificación de un problema
Identificación de un problemaIdentificación de un problema
Identificación de un problemaptardilaq
 
Entrada y salida de datos en c
Entrada y salida de datos en cEntrada y salida de datos en c
Entrada y salida de datos en cDenisse C
 
La gestion del tiempo y metodologia GTD
La gestion del tiempo y metodologia GTDLa gestion del tiempo y metodologia GTD
La gestion del tiempo y metodologia GTDCerindetec
 
Heurísticos en la resolución de problemas
Heurísticos en la resolución de problemasHeurísticos en la resolución de problemas
Heurísticos en la resolución de problemasgjmendietap
 
Los factores que influyen en las decisiones
Los factores que influyen en las decisionesLos factores que influyen en las decisiones
Los factores que influyen en las decisionesjuliancobo
 
Tipos de Memorias en informatica
Tipos de Memorias en informaticaTipos de Memorias en informatica
Tipos de Memorias en informaticaAlejandro Cano
 
Características de un algoritmo
Características de un algoritmoCaracterísticas de un algoritmo
Características de un algoritmoroxanaparra28
 
Técnicas De Identificación De Problemas Y Toma De Decisión
Técnicas De Identificación De Problemas Y Toma De DecisiónTécnicas De Identificación De Problemas Y Toma De Decisión
Técnicas De Identificación De Problemas Y Toma De Decisiónshuler
 

Destacado (20)

Fase De Analisis Del Problema
Fase De Analisis Del ProblemaFase De Analisis Del Problema
Fase De Analisis Del Problema
 
Resolucion De Problemas Con Computadora
Resolucion De Problemas Con ComputadoraResolucion De Problemas Con Computadora
Resolucion De Problemas Con Computadora
 
Informatica II - 2 Metodologia de Solucion de Problemas
Informatica II - 2 Metodologia de Solucion de ProblemasInformatica II - 2 Metodologia de Solucion de Problemas
Informatica II - 2 Metodologia de Solucion de Problemas
 
Fases de programacion
Fases de programacionFases de programacion
Fases de programacion
 
3 AnáLisis Del Problema
3 AnáLisis Del Problema3 AnáLisis Del Problema
3 AnáLisis Del Problema
 
Tema 3 metodología para la solución de problemas
Tema 3  metodología para la solución de problemasTema 3  metodología para la solución de problemas
Tema 3 metodología para la solución de problemas
 
Solución de problemas con algoritmos
Solución de problemas con algoritmosSolución de problemas con algoritmos
Solución de problemas con algoritmos
 
Algoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionAlgoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacion
 
Método De Solución De Problemas
Método De Solución De ProblemasMétodo De Solución De Problemas
Método De Solución De Problemas
 
Identificación de un problema
Identificación de un problemaIdentificación de un problema
Identificación de un problema
 
Entrada y salida de datos en c
Entrada y salida de datos en cEntrada y salida de datos en c
Entrada y salida de datos en c
 
La gestion del tiempo y metodologia GTD
La gestion del tiempo y metodologia GTDLa gestion del tiempo y metodologia GTD
La gestion del tiempo y metodologia GTD
 
Fases del proceso de programación
Fases del proceso de programaciónFases del proceso de programación
Fases del proceso de programación
 
Heurísticos en la resolución de problemas
Heurísticos en la resolución de problemasHeurísticos en la resolución de problemas
Heurísticos en la resolución de problemas
 
Los factores que influyen en las decisiones
Los factores que influyen en las decisionesLos factores que influyen en las decisiones
Los factores que influyen en las decisiones
 
Asertividad y conducta asertiva
Asertividad y conducta asertivaAsertividad y conducta asertiva
Asertividad y conducta asertiva
 
Elaboracion de algoritmos
Elaboracion de algoritmosElaboracion de algoritmos
Elaboracion de algoritmos
 
Tipos de Memorias en informatica
Tipos de Memorias en informaticaTipos de Memorias en informatica
Tipos de Memorias en informatica
 
Características de un algoritmo
Características de un algoritmoCaracterísticas de un algoritmo
Características de un algoritmo
 
Técnicas De Identificación De Problemas Y Toma De Decisión
Técnicas De Identificación De Problemas Y Toma De DecisiónTécnicas De Identificación De Problemas Y Toma De Decisión
Técnicas De Identificación De Problemas Y Toma De Decisión
 

Similar a Fases de resolucion de problemas

Metodología para la solución de problemas
Metodología para la solución de problemasMetodología para la solución de problemas
Metodología para la solución de problemasAmilcar Valladares
 
Fases de programacion
Fases de programacionFases de programacion
Fases de programacionleiderserna
 
Fases del proceso de programación
Fases del proceso de programaciónFases del proceso de programación
Fases del proceso de programaciónelizabethpaola
 
Fases del proceso de programación
Fases del proceso de programaciónFases del proceso de programación
Fases del proceso de programaciónelizabethpaola
 
Investigar y describa la resolución de problemas empleando computadoras
Investigar y describa la resolución de problemas empleando computadorasInvestigar y describa la resolución de problemas empleando computadoras
Investigar y describa la resolución de problemas empleando computadoraschristian arroyo marchan
 
Ciclo de vida del software
Ciclo de vida del softwareCiclo de vida del software
Ciclo de vida del softwarecoldclean
 
Metodología para la solución de problemas utilizando la computadora 2°Am Prog...
Metodología para la solución de problemas utilizando la computadora 2°Am Prog...Metodología para la solución de problemas utilizando la computadora 2°Am Prog...
Metodología para la solución de problemas utilizando la computadora 2°Am Prog...Dulcevelazquez6
 
Lenguajes de programación parte i.3
Lenguajes de programación parte i.3Lenguajes de programación parte i.3
Lenguajes de programación parte i.3Marquina, Santiago
 
1 er practico de programación
1 er practico de programación1 er practico de programación
1 er practico de programaciónnela333
 
El algoritmo como estrategia y herramienta para la solución de problemas
El algoritmo como estrategia y herramienta para la solución de problemasEl algoritmo como estrategia y herramienta para la solución de problemas
El algoritmo como estrategia y herramienta para la solución de problemasBERNARDAURELIOFELIZM
 
Algoritmos diagrama-de-flujo
Algoritmos diagrama-de-flujoAlgoritmos diagrama-de-flujo
Algoritmos diagrama-de-flujocognos_uie
 

Similar a Fases de resolucion de problemas (20)

Metodología para la solución de problemas
Metodología para la solución de problemasMetodología para la solución de problemas
Metodología para la solución de problemas
 
Fases de programacion
Fases de programacionFases de programacion
Fases de programacion
 
Fases del proceso de programación
Fases del proceso de programaciónFases del proceso de programación
Fases del proceso de programación
 
Fases del proceso de programación
Fases del proceso de programaciónFases del proceso de programación
Fases del proceso de programación
 
Fases del proceso de programación
Fases del proceso de programaciónFases del proceso de programación
Fases del proceso de programación
 
Fases de un programa
Fases de un programaFases de un programa
Fases de un programa
 
Investigar y describa la resolución de problemas empleando computadoras
Investigar y describa la resolución de problemas empleando computadorasInvestigar y describa la resolución de problemas empleando computadoras
Investigar y describa la resolución de problemas empleando computadoras
 
Video
VideoVideo
Video
 
Ciclo de vida del software
Ciclo de vida del softwareCiclo de vida del software
Ciclo de vida del software
 
Metodología para la solución de problemas utilizando la computadora 2°Am Prog...
Metodología para la solución de problemas utilizando la computadora 2°Am Prog...Metodología para la solución de problemas utilizando la computadora 2°Am Prog...
Metodología para la solución de problemas utilizando la computadora 2°Am Prog...
 
Modulo 1 algoritmo
Modulo 1 algoritmoModulo 1 algoritmo
Modulo 1 algoritmo
 
Modulo 1 algoritmo
Modulo 1 algoritmoModulo 1 algoritmo
Modulo 1 algoritmo
 
Lenguajes de programación parte i.3
Lenguajes de programación parte i.3Lenguajes de programación parte i.3
Lenguajes de programación parte i.3
 
Exposicion unidad-iii
Exposicion unidad-iiiExposicion unidad-iii
Exposicion unidad-iii
 
Maps
MapsMaps
Maps
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
1 er practico de programación
1 er practico de programación1 er practico de programación
1 er practico de programación
 
El algoritmo como estrategia y herramienta para la solución de problemas
El algoritmo como estrategia y herramienta para la solución de problemasEl algoritmo como estrategia y herramienta para la solución de problemas
El algoritmo como estrategia y herramienta para la solución de problemas
 
Algoritmos diagrama-de-flujo
Algoritmos diagrama-de-flujoAlgoritmos diagrama-de-flujo
Algoritmos diagrama-de-flujo
 
Algoritmo diagrama de_flujo
Algoritmo diagrama de_flujoAlgoritmo diagrama de_flujo
Algoritmo diagrama de_flujo
 

Más de ncrmax

Operaciones de Entrada / Salida en C++
Operaciones de Entrada / Salida en C++Operaciones de Entrada / Salida en C++
Operaciones de Entrada / Salida en C++ncrmax
 
Estructuras Selectivas y Repetitivas en C++
Estructuras Selectivas y Repetitivas en C++Estructuras Selectivas y Repetitivas en C++
Estructuras Selectivas y Repetitivas en C++ncrmax
 
Estructura de Programa en C++
Estructura de Programa en C++Estructura de Programa en C++
Estructura de Programa en C++ncrmax
 
Palabras Reservadas en C++
Palabras Reservadas en C++Palabras Reservadas en C++
Palabras Reservadas en C++ncrmax
 
Variables y Constantes en C++
Variables y Constantes en C++Variables y Constantes en C++
Variables y Constantes en C++ncrmax
 
Tipos de Datos en C++
Tipos de Datos en C++Tipos de Datos en C++
Tipos de Datos en C++ncrmax
 
Traduccion nielsen
Traduccion nielsenTraduccion nielsen
Traduccion nielsenncrmax
 

Más de ncrmax (7)

Operaciones de Entrada / Salida en C++
Operaciones de Entrada / Salida en C++Operaciones de Entrada / Salida en C++
Operaciones de Entrada / Salida en C++
 
Estructuras Selectivas y Repetitivas en C++
Estructuras Selectivas y Repetitivas en C++Estructuras Selectivas y Repetitivas en C++
Estructuras Selectivas y Repetitivas en C++
 
Estructura de Programa en C++
Estructura de Programa en C++Estructura de Programa en C++
Estructura de Programa en C++
 
Palabras Reservadas en C++
Palabras Reservadas en C++Palabras Reservadas en C++
Palabras Reservadas en C++
 
Variables y Constantes en C++
Variables y Constantes en C++Variables y Constantes en C++
Variables y Constantes en C++
 
Tipos de Datos en C++
Tipos de Datos en C++Tipos de Datos en C++
Tipos de Datos en C++
 
Traduccion nielsen
Traduccion nielsenTraduccion nielsen
Traduccion nielsen
 

Fases de resolucion de problemas

  • 1. 1 FASES DE LA RESOLUCIÓN DE PROBLEMAS CON LA COMPUTADORA 1. Análisis del problema: en esta fase se determina que hará el programa. Consiste entonces en una clara definición donde se contemple exactamente lo que la aplicación debe hacer y que necesita para hacerlo. Para ello se tratar de entender comprender el contexto del problema en cuestión, recopilar toda la información necesaria para dicha comprensión y como las partes que lo componen afectan. Mas en concreto, si un programa ejecuta una serie de instrucciones que modifican su estado, en esta fase se determina a que estado se tiene que llegar, dado un estado inicial, para que se garantice la resolución del problema. Para la ejecución de esta fase es recomendable seguir los pasos que a continuación se mencionan:  Confirmación de que el problema existe realmente: se deben identificar y recoger los datos requeridos para confirmar que el problema identificado es real. Para comprender un problema los mismos datos deben indicar quién, qué, cuándo, dónde y por qué el problema es más grave, así como ciertas preguntas relacionadas con cuánto, de qué tamaño, cuántas o cuántos.  Presentación gráfica de los datos: esta forma de presentación de los datos permite usar la información con mayor facilidad.  Identificación de las causas potenciales: es necesario identificar y poner de manifiesto todas las causas potenciales que están contribuyendo a la existencia del problema bajo consideración. 2. Diseño del Algoritmo: en esta fase se determina como hace el programa la tarea solicitada. Para ello se utilizan los Algoritmos, que consisten en una secuencia ordenada de pasos que conducen a la resolución de un problema dado, sin ambigüedades y expresado en lenguaje natural. Para diseñar un algoritmo se debe comenzar por identificar las tareas más importantes para resolver el problema y disponerlas en el orden en el que han de ser ejecutadas. Los pasos en esta primera descripción pueden requerir una revisión adicional antes de que podamos obtener un algoritmo claro, preciso y completo. En un algoritmo se deben de considerar tres partes:  Entrada: Información dada al algoritmo.
  • 2. 2  Proceso: Operaciones o cálculos necesarios para encontrar la solución del problema.  Salida: Respuestas dadas por el algoritmo o resultados finales de los procesos realizados. Al diseñar algoritmos para escribir un programa, es necesario conocer determinadas estructuras cuyo objetivo es controlar su ejecución. Estas, se denominan Estructuras e Control, las cuales, permiten modificar el flujo u orden de ejecución de los distintos pasos de un programa. Las Estructuras de Control pueden ser de tres tipos:  Estructura Secuencial: es aquélla en la que una acción sigue a otra en secuencia. Las tareas se suceden de tal modo que la salida de una es la entrada de la siguiente y así sucesivamente hasta el fin del proceso. La estructura secuencial tiene una entrada y una salida.  Estructuras Selectivas: en estas se evalúa una condición y en función del resultado de la misma se realiza una opción u otra. Las condiciones se especifican usando expresiones lógicas.
  • 3. 3  Estructuras Repetitivas: consisten en la repetición de una secuencia de instrucciones un número determinado de veces hasta que una condición de terminación se cumpla. También se hace necesario diseñar algoritmos bajo algún método que permita guiar este proceso: entre estos dos métodos encontramos:  Diseño descendente: los problemas complejos se pueden resolver mas eficazmente cuando se descomponen en subproblemas que sean mas fáciles de resolver que el original. De esta manera, un problema complejo se divide en módulos o partes más simples, cuya resolución se hace más sencilla.  Refinamiento por Pasos: consiste en describir un reducido número de pasos, que deberán ser expresados con mayor detalle posteriormente. Tras esta primera descripción, estos se especifican con mayor minuciosidad, de forma más extensa y con más pasos específicos. 3. Implementación del Algoritmo: a partir del diseño del algoritmo, este se expresa en términos de un lenguaje de programación concreto y se ejecuta para probar su correcto funcionamiento. Para ello se realizan los siguientes pasos:  Codificación: es la conversión de un algoritmo en instrucciones de un lenguaje de programación. Dicha conversión consiste en la escritura de la representación del algoritmo de acuerdo con la sintaxis del lenguaje de
  • 4. 4 programación escogido, ya que únicamente las instrucciones sintacticamente correctas pueden ser interpretadas por el computador.  Documentación: consiste en añadir a los programas suficiente información mediante comentarios o etiquetas de texto que expliquen lo que hace, punto por punto, de forma que no sólo los ordenadores sepan qué hacer, sino que además los humanos entiendan qué están haciendo y por qué.  Compilación: es el proceso de traducción de un programa escrito en un lenguaje de programación, para generar otro en un lenguaje que la computadora sea capaz de entender. Una vez que el algoritmo se ha convertido en un programa fuente, debe ser traducido a lenguaje máquina. Si al compilar el programa fuente se presentan errores (errores de compilación), es necesario volver a editar el programa, corregir los errores y compilar de nuevo.  Ejecución: tras la codificación del programa, este deberá ejecutarse en un computador. El resultado de esta primera ejecución es incierto, ya que existe una alta posibilidad de que aparezcan errores.  Verificación: consiste en comprobar que el programa realiza las tareas para las que se ha diseñado y produce el resultado correcto y esperado.  Depuración: una vez que el programa se ejecuta, es probable que arroje errores de lógicos o de sintaxis originados por diversas causas. La Depuración es el proceso de identificar dichos errores y corregirlos.