SlideShare una empresa de Scribd logo
1 de 19
 2.1 METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS
 METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS 	El proceso de resolución de un problema con una computadora conduce a la escritura de un programa y su ejecución en la misma. 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.   Las fases de resolución de un problema con computadora son: Análisis del problema Diseño del algoritmo Codificación  Compilación y ejecución Verificación Depuración Mantenimiento Documentación
METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS Las dos primeras fases conducen a un diseño detallado escrito en forma de algoritmo. Durante la tercera etapa (codificación) se implementa el algoritmo en un código escrito en un lenguaje de programación, reflejando las ideas desarrolladas en las fases de análisis y diseño. La fase de compilación y ejecución traduce y ejecuta el programa. En las fases de verificación y depuración el programador busca errores de las etapas anteriores y los elimina. Comprobará que mientras más tiempo se invierta en la fase de análisis y diseño menos tiempo se perderá en la depuración del programa. Por último, se debe realizar la documentación del programa. Antes de conocer las tareas a realizar en cada fase, vamos a considerar el concepto y significado de la palabra algoritmo. La palabra algoritmo se deriva de la traducción al latín de la palabra Alkhôwarîzmi, nombre de un matemático y astrónomo árabe que escribió un tratado sobre manipulación de números y ecuaciones en el siglo IX. Un algoritmo es un método para resolver un problema mediante una serie de pasos precisos, definidos y finitos.
METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS Análisis del problema 	La primera fase de la resolución de un problema con computadora  es el análisis del problema. Esta fase  requiere una clara definición, donde se contemple exactamente lo que debe hacer el programa y el resultado o solución deseada. 	Dado que se busca una solución por computadora, se precisan especificaciones detalladas de entrada y salida. La siguiente figura muestra los requisitos que se deben definir en el análisis,
METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS Para poder definir bien un problema es conveniente responder a las siguientes preguntas: 	¿Qué entradas e requieren? (tipo y cantidad) 	¿Cuál es la salida deseada? (tipo y cantidad) 	¿Qué método produce la salida deseada?
METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS Ejemplo 1: 	Se desea obtener una tabla con las depreciaciones acumuladas y dos valores reales de cada año de un automóvil comprado en $380,000 en el año 1996, durante los seis años siguientes suponiendo un valor de recuperación o rescate de $45,000. Realizar el análisis del problema, conociendo la fórmula de depreciación anual constante D para cada año de vida útil. Proceso:  Depreciación acumulada Cálculo de la depreciación acumulada  cada año Cálculo del valor del automóvil en cada año Entradas: Costo original Vida útil Valor de recuperación Salida: Depreciación anual por año Depreciación acumulada en cada año Valor del automóvil en cada año
METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS La siguiente tabla muestra la salida solicitada: Fin del ejemplo 1
METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS Diseño del algoritmo En la etapa de análisis del proceso de programación se determina qué hace el programa. En la etapa de diseño se determina cómo hace el programa la tarea solicitada. Los métodos más eficaces para el proceso de diseño en el refrán conocido “divide y vencerás”. Es decir, la resolución de un problema complejo se realiza dividiendo el problema en subproblemas y a continuación subdividir estos subproblemas en otros de nivel más bajo, hasta que pueda ser implementada una solución en la computadora. Este método se conoce técnicamente como diseño descendente (top-down) o modular. El proceso de dividir el problema en cada etapa y expresar cada paso en forma más detallada se denomina refinamiento sucesivo. Cada subproblema es resuelto mediante un módulo (subprograma) que tiene un solo punto de entrada y un solo punto de salida.  Cualquier programa bien diseñado consta de un programa principal (el módulo de nivel más alto) que llama a subprogramas (módulos de nivel más bajo) que a su vez pueden llamar a otros subprogramas.
METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS Herramientas de programación Las dos herramientas más utilizadas para diseñar algoritmos son: diagramas de flujo y pseudocódigos. Diagramas de flujo Un diagrama de flujo (flowchart) es una representación gráfica de un algoritmo. (los símbolos utilizados han sido normalizados por el Instituto Norteamericano de Normalización (ANSI, por sus siglas en inglés) y los más frecuentemente empleados se muestran en la siguiente tabla:
METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS Herramientas de programación
METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS Pseudocódigo El pseudocódigo es una herramienta de programación en que las instrucciones se escriben en palabras similares al inglés o español, que facilitan tanto la escritura como la lectura de programas. En esencia, el pseudocódigo se puede definir como un lenguaje de especificaciones de algoritmos. Aunque no existen reglas para escritura del pseudocódigo en español, se ha recogido una notación estándar que es muy empleada en los libros de programación en español. Las palabras reservadas básicas se representan en letras negritas minúsculas. Estas palabras son traducción libre de palabras reservadas de lenguajes como C, Pascal, etc.
METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS Ejemplo 2 El pseudocódigo que resuelve el ejemplo 1 es el siguiente:  Previsiones de depreciación   Introducir	costo inicial 	Vida útil 	Valor final de rescate (recuperación)   Imprimir encabezados Establecer el valor inicial del año Calcular depreciación mientras valor año <= vida útil hacer 	calcular depreciación acumulada 	calcular valor actual imprimir una línea en la tabla 	incrementar el valor del año fin de mientras
METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS El diagrama de flujo se muestra en la siguiente figura: Fin del ejemplo 2
METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS Codificación de un programa Una vez que el algoritmo se ha convertido en un programa fuente, es preciso introducirlo en memoria mediante el teclado y almacenarlo posteriormente en un disco. Esta operación se realiza con un programa editor, posteriormente el programa fuente se convierte en un archivo de programa que se guarda (graba) en disco. El programa fuente debe ser traducido a lenguaje máquina, este proceso se realiza con el compilador y el sistema operativo que se encarga particularmente  de la compilación.
METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS Codificación de un programa Si tras la compilación se presentan errores (errores de compilación) en el programa fuente, es preciso volver a editar el programa, corregir los errores y compilar nuevamente. Este proceso se repite hasta que no se producen errores, obteniéndose el programa objeto que todavía no es ejecutable directamente. Suponiendo que no existen errores en el programa fuente, se debe instruir al sistema operativo para que realice la fase de montaje o enlace (link), es decir, la carga del programa objeto con las librerías del programa de compilador. El proceso de montaje produce un programa ejecutable. Cuando el programa ejecutable se ha creado, se puede ya ejecutar desde el sistema operativo con solo teclear su nombre, desde sistema operativo DOS, o bien haciendo doble clic, desde Windows.
METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS Verificación y depuración de un programa La verificación de un programa es el proceso de ejecución del programa con una amplia variedad de datos de entrada, llamados datos de test o prueba, que determinarán si el programa tiene errores (“bugs”). Para realizar la verificación se debe desarrollar una amplia gama de datos de test: valores normales de entrada, valores extremos de entrada que comprueben los límites del programa y valores de entrada que comprueben aspectos especiales del programa. La depuración es el proceso de encontrar los errores del programa y corregir o eliminar dichos errores.
METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS Verificación y depuración de un programa Cuando se ejecuta un programa se pueden producir tres tipos de errores: Errores de compilación. Se producen normalmente por un uso incorrecto de las reglas del lenguaje de programación y suelen ser errores de sintaxis. Si existe un error de sintaxis, la computadora ni puede comprender la instrucción, no se obtendrá el programa objeto y el compilador imprimirá una lista de todos los errores encontrados durante la compilación. Errores de ejecución. Estos errores se producen por instrucciones que la computadora puede comprender pero no ejecutar. Ejemplos típicos son: división entre cero y raíces cuadradas de números negativos. En estos casos se detiene la ejecución del programa y se imprime un mensaje de error. 
METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS Verificación y depuración de un programa Errores de lógica. Se producen en la lógica del programa y la fuente del error suele ser el diseño del algoritmo. Estos errores son los más difíciles de detectar, ya que el programa puede funcionar y no producir errores de compilación ni de ejecución, y sólo puede advertir el error por la obtención de resultados incorrectos. En este caso se debe volver a la fase de diseño del algoritmo, modificar el algoritmo, cambiar el programa  fuente y compilar y ejecutar una vez más.
METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS Documentación y mantenimiento La documentación de un problema consta de las descripciones de los pasos a dar en el proceso de resolución de un problema. La importancia de la documentación debe ser destacada por su decisiva influencia en el producto final. Programas pobremente documentados son difíciles de leer, más difíciles de depurar y casi imposibles de mantener y modificar. La documentación de un programa puede ser interna y externa. La documentación interna es la contenida en líneas de comentarios. La documentación externa incluye análisis, diagramas de flujo, pseudocódigos, manuales de usuario con instrucciones para ejecutar el programa y para interpretar los resultados. La documentación es vital cuando se desea corregir posibles errores futuros o bien cambiar el programa.  Tales cambios se denominan mantenimiento del programa. Después de cada cambio la documentación debe ser actualizada para facilitar cambios posteriores.

Más contenido relacionado

La actualidad más candente

Ejercicios Resueltos de Diagrama de flujo
Ejercicios Resueltos de Diagrama de flujo Ejercicios Resueltos de Diagrama de flujo
Ejercicios Resueltos de Diagrama de flujo jorgeluisrivillas
 
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
 
Ejercicio 1 diagrama de flujo
Ejercicio 1 diagrama de flujoEjercicio 1 diagrama de flujo
Ejercicio 1 diagrama de flujolisvancelis
 
Lenguaje natural pseudocodigo diagramacion y programacion
Lenguaje natural pseudocodigo diagramacion y programacionLenguaje natural pseudocodigo diagramacion y programacion
Lenguaje natural pseudocodigo diagramacion y programacionClaudia Poza
 
Estructura básica de un programa en C++
Estructura básica de un programa en C++Estructura básica de un programa en C++
Estructura básica de un programa en C++Rosbelia Balza
 
Tabla comparativa programación estructurada y orientada a objetos
Tabla comparativa programación estructurada y orientada a objetosTabla comparativa programación estructurada y orientada a objetos
Tabla comparativa programación estructurada y orientada a objetosFrancisco Javier Canizales Vazquez
 
21 problemas de algoritmo resueltos
21 problemas de algoritmo resueltos21 problemas de algoritmo resueltos
21 problemas de algoritmo resueltosRoldan El Gato
 
P. estructurada vs. programación orientada a objetos
P. estructurada vs. programación orientada a objetosP. estructurada vs. programación orientada a objetos
P. estructurada vs. programación orientada a objetosGeovanny Yungán
 
Algoritmo de la ecuación cuadrática
Algoritmo de la ecuación cuadráticaAlgoritmo de la ecuación cuadrática
Algoritmo de la ecuación cuadráticaaidamarcela
 
Presentacion Programacion
Presentacion ProgramacionPresentacion Programacion
Presentacion Programacionguestd5974a6
 
Diagramas de flujo - Estructuras de Control (For, While, Do Whille y Switch C...
Diagramas de flujo - Estructuras de Control (For, While, Do Whille y Switch C...Diagramas de flujo - Estructuras de Control (For, While, Do Whille y Switch C...
Diagramas de flujo - Estructuras de Control (For, While, Do Whille y Switch C...Marcelo Vilela Pardo
 
Arreglos o dimensiones en pseint
Arreglos o dimensiones en pseintArreglos o dimensiones en pseint
Arreglos o dimensiones en pseintDon Augusto
 
Sesión 3: Modelos prescriptivos de proceso
Sesión 3: Modelos prescriptivos de procesoSesión 3: Modelos prescriptivos de proceso
Sesión 3: Modelos prescriptivos de procesoCoesi Consultoria
 

La actualidad más candente (20)

Ejercicios Resueltos de Diagrama de flujo
Ejercicios Resueltos de Diagrama de flujo Ejercicios Resueltos de Diagrama de flujo
Ejercicios Resueltos de Diagrama de flujo
 
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
 
Ejercicio 1 diagrama de flujo
Ejercicio 1 diagrama de flujoEjercicio 1 diagrama de flujo
Ejercicio 1 diagrama de flujo
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Estructura Repetitiva MIENTRAS (While) con PSeInt
Estructura Repetitiva MIENTRAS (While) con PSeIntEstructura Repetitiva MIENTRAS (While) con PSeInt
Estructura Repetitiva MIENTRAS (While) con PSeInt
 
Lenguaje natural pseudocodigo diagramacion y programacion
Lenguaje natural pseudocodigo diagramacion y programacionLenguaje natural pseudocodigo diagramacion y programacion
Lenguaje natural pseudocodigo diagramacion y programacion
 
Estructura básica de un programa en C++
Estructura básica de un programa en C++Estructura básica de un programa en C++
Estructura básica de un programa en C++
 
Algoritmos y programacion en C++
Algoritmos y programacion en C++Algoritmos y programacion en C++
Algoritmos y programacion en C++
 
Modelo evolutivo
Modelo evolutivoModelo evolutivo
Modelo evolutivo
 
Desarrollo De Sistemas
Desarrollo De SistemasDesarrollo De Sistemas
Desarrollo De Sistemas
 
Tabla comparativa programación estructurada y orientada a objetos
Tabla comparativa programación estructurada y orientada a objetosTabla comparativa programación estructurada y orientada a objetos
Tabla comparativa programación estructurada y orientada a objetos
 
21 problemas de algoritmo resueltos
21 problemas de algoritmo resueltos21 problemas de algoritmo resueltos
21 problemas de algoritmo resueltos
 
P. estructurada vs. programación orientada a objetos
P. estructurada vs. programación orientada a objetosP. estructurada vs. programación orientada a objetos
P. estructurada vs. programación orientada a objetos
 
Algoritmo de la ecuación cuadrática
Algoritmo de la ecuación cuadráticaAlgoritmo de la ecuación cuadrática
Algoritmo de la ecuación cuadrática
 
Proceso del Software
Proceso del Software Proceso del Software
Proceso del Software
 
Presentacion Programacion
Presentacion ProgramacionPresentacion Programacion
Presentacion Programacion
 
Diagramas de flujo - Estructuras de Control (For, While, Do Whille y Switch C...
Diagramas de flujo - Estructuras de Control (For, While, Do Whille y Switch C...Diagramas de flujo - Estructuras de Control (For, While, Do Whille y Switch C...
Diagramas de flujo - Estructuras de Control (For, While, Do Whille y Switch C...
 
Arreglos o dimensiones en pseint
Arreglos o dimensiones en pseintArreglos o dimensiones en pseint
Arreglos o dimensiones en pseint
 
Sesión 3: Modelos prescriptivos de proceso
Sesión 3: Modelos prescriptivos de procesoSesión 3: Modelos prescriptivos de proceso
Sesión 3: Modelos prescriptivos de proceso
 
Pseint
PseintPseint
Pseint
 

Destacado

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
 
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
 
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
 
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
 
METODO DE SOLUCION DE PROBLEMAS EN INGENIERIA
METODO DE SOLUCION DE PROBLEMAS EN INGENIERIAMETODO DE SOLUCION DE PROBLEMAS EN INGENIERIA
METODO DE SOLUCION DE PROBLEMAS EN INGENIERIAEmmanuel Castillo Segovia
 
Metodo de los 7 pasos
Metodo de los 7 pasosMetodo de los 7 pasos
Metodo de los 7 pasosmcubero13
 
METODOLOGÍA PARA EL DISEÑO DE SOFTWARE
METODOLOGÍA PARA EL DISEÑO DE SOFTWAREMETODOLOGÍA PARA EL DISEÑO DE SOFTWARE
METODOLOGÍA PARA EL DISEÑO DE SOFTWAREadark
 
Metodos para resolver problemas polya
Metodos para resolver problemas polyaMetodos para resolver problemas polya
Metodos para resolver problemas polyaAna Lilia Almeida
 
Desarrollo de lógica algorítmica
Desarrollo de lógica algorítmicaDesarrollo de lógica algorítmica
Desarrollo de lógica algorítmicaOmar B.
 
DEFINICIÓN DE LENGUAJES ALGORÍTMICOS
DEFINICIÓN DE LENGUAJES ALGORÍTMICOSDEFINICIÓN DE LENGUAJES ALGORÍTMICOS
DEFINICIÓN DE LENGUAJES ALGORÍTMICOSadark
 
Lógica para la solución de problemas
Lógica para la solución de problemasLógica para la solución de problemas
Lógica para la solución de problemassarpiosm
 
Informatica II - 1 Terminologia Usada en Algoritmos
Informatica II - 1 Terminologia Usada en AlgoritmosInformatica II - 1 Terminologia Usada en Algoritmos
Informatica II - 1 Terminologia Usada en AlgoritmosGabriel Ruiz
 
Los 4 pasos para la resolucion de problemas de pólya
Los 4 pasos para la resolucion de problemas de pólyaLos 4 pasos para la resolucion de problemas de pólya
Los 4 pasos para la resolucion de problemas de pólyamanueloyarzun
 
Problemas aplicando los pasos de polya.
Problemas aplicando los pasos de polya.Problemas aplicando los pasos de polya.
Problemas aplicando los pasos de polya.Paulette23
 
Resolución de problemas matemáticos
Resolución de problemas matemáticosResolución de problemas matemáticos
Resolución de problemas matemáticosAlfredo Terrazas
 
Diagramas de Flujo y Algoritmos (Informática ll)
Diagramas de Flujo y Algoritmos (Informática ll)Diagramas de Flujo y Algoritmos (Informática ll)
Diagramas de Flujo y Algoritmos (Informática ll)irvingsalazar2
 

Destacado (20)

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
 
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
 
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
 
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
 
METODO DE SOLUCION DE PROBLEMAS EN INGENIERIA
METODO DE SOLUCION DE PROBLEMAS EN INGENIERIAMETODO DE SOLUCION DE PROBLEMAS EN INGENIERIA
METODO DE SOLUCION DE PROBLEMAS EN INGENIERIA
 
Metodo de los 7 pasos
Metodo de los 7 pasosMetodo de los 7 pasos
Metodo de los 7 pasos
 
METODOLOGÍA PARA EL DISEÑO DE SOFTWARE
METODOLOGÍA PARA EL DISEÑO DE SOFTWAREMETODOLOGÍA PARA EL DISEÑO DE SOFTWARE
METODOLOGÍA PARA EL DISEÑO DE SOFTWARE
 
Solución de problemas con algoritmos
Solución de problemas con algoritmosSolución de problemas con algoritmos
Solución de problemas con algoritmos
 
Metodos para resolver problemas polya
Metodos para resolver problemas polyaMetodos para resolver problemas polya
Metodos para resolver problemas polya
 
Desarrollo de lógica algorítmica
Desarrollo de lógica algorítmicaDesarrollo de lógica algorítmica
Desarrollo de lógica algorítmica
 
DEFINICIÓN DE LENGUAJES ALGORÍTMICOS
DEFINICIÓN DE LENGUAJES ALGORÍTMICOSDEFINICIÓN DE LENGUAJES ALGORÍTMICOS
DEFINICIÓN DE LENGUAJES ALGORÍTMICOS
 
Lógica para la solución de problemas
Lógica para la solución de problemasLógica para la solución de problemas
Lógica para la solución de problemas
 
Top down
Top downTop down
Top down
 
Informatica II - 1 Terminologia Usada en Algoritmos
Informatica II - 1 Terminologia Usada en AlgoritmosInformatica II - 1 Terminologia Usada en Algoritmos
Informatica II - 1 Terminologia Usada en Algoritmos
 
Los 4 pasos para la resolucion de problemas de pólya
Los 4 pasos para la resolucion de problemas de pólyaLos 4 pasos para la resolucion de problemas de pólya
Los 4 pasos para la resolucion de problemas de pólya
 
Solución de problemas
Solución de problemasSolución de problemas
Solución de problemas
 
Problemas aplicando los pasos de polya.
Problemas aplicando los pasos de polya.Problemas aplicando los pasos de polya.
Problemas aplicando los pasos de polya.
 
Resolución de problemas matemáticos
Resolución de problemas matemáticosResolución de problemas matemáticos
Resolución de problemas matemáticos
 
Diagramas de Flujo y Algoritmos (Informática ll)
Diagramas de Flujo y Algoritmos (Informática ll)Diagramas de Flujo y Algoritmos (Informática ll)
Diagramas de Flujo y Algoritmos (Informática ll)
 
Top down y bottom up
Top down y bottom upTop down y bottom up
Top down y bottom up
 

Similar a METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS

Fases de programacion
Fases de programacionFases de programacion
Fases de programacionbrayan_2012
 
ALGORITMO Y METODOLOGÍA PARA LA RESOLUCIÓN PROBLEMAS BASADOS EN EL COMPUTADOR
ALGORITMO Y METODOLOGÍA PARA LA RESOLUCIÓN PROBLEMAS BASADOS EN EL COMPUTADOR ALGORITMO Y METODOLOGÍA PARA LA RESOLUCIÓN PROBLEMAS BASADOS EN EL COMPUTADOR
ALGORITMO Y METODOLOGÍA PARA LA RESOLUCIÓN PROBLEMAS BASADOS EN EL COMPUTADOR DarkStarPlay
 
Actividad 7
Actividad 7Actividad 7
Actividad 72244090
 
Diagramas de flujo
Diagramas de flujoDiagramas de flujo
Diagramas de flujocasdilacol
 
Resolución de problemas haciendo uso del computador
Resolución de problemas haciendo uso del computadorResolución de problemas haciendo uso del computador
Resolución de problemas haciendo uso del computadorVictor Alfonzo Marquina
 
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
 
Introducción a la Programación
Introducción a la ProgramaciónIntroducción a la Programación
Introducción a la ProgramaciónPablo Parola
 
Introducción A La Programación
Introducción A La ProgramaciónIntroducción A La Programación
Introducción A La ProgramaciónPablo Parola
 
PASOS PARA LA SOLUCION DE PROBLEMAS - HTML
PASOS PARA LA SOLUCION DE PROBLEMAS - HTMLPASOS PARA LA SOLUCION DE PROBLEMAS - HTML
PASOS PARA LA SOLUCION DE PROBLEMAS - HTMLfelipeforero72
 
Srahi garcia ruiz_2am_programacion2
Srahi garcia ruiz_2am_programacion2Srahi garcia ruiz_2am_programacion2
Srahi garcia ruiz_2am_programacion2Sarahi Garcia Ruiz
 

Similar a METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS (20)

Metodologia
MetodologiaMetodologia
Metodologia
 
Fases de programacion
Fases de programacionFases de programacion
Fases de programacion
 
Actividad 7
Actividad 7Actividad 7
Actividad 7
 
Las fases de la programación
Las fases de la programaciónLas fases de la programación
Las fases de la programación
 
Actividad 7
Actividad 7Actividad 7
Actividad 7
 
Clase de programacion
Clase  de  programacionClase  de  programacion
Clase de programacion
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
ALGORITMO Y METODOLOGÍA PARA LA RESOLUCIÓN PROBLEMAS BASADOS EN EL COMPUTADOR
ALGORITMO Y METODOLOGÍA PARA LA RESOLUCIÓN PROBLEMAS BASADOS EN EL COMPUTADOR ALGORITMO Y METODOLOGÍA PARA LA RESOLUCIÓN PROBLEMAS BASADOS EN EL COMPUTADOR
ALGORITMO Y METODOLOGÍA PARA LA RESOLUCIÓN PROBLEMAS BASADOS EN EL COMPUTADOR
 
Actividad 7
Actividad 7Actividad 7
Actividad 7
 
Diagramas de flujo
Diagramas de flujoDiagramas de flujo
Diagramas de flujo
 
Resolución de problemas haciendo uso del computador
Resolución de problemas haciendo uso del computadorResolución de problemas haciendo uso del computador
Resolución de problemas haciendo uso del computador
 
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...
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
Introducción a la Programación
Introducción a la ProgramaciónIntroducción a la Programación
Introducción a la Programación
 
Introducción A La Programación
Introducción A La ProgramaciónIntroducción A La Programación
Introducción A La Programación
 
act. 7
act. 7act. 7
act. 7
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
PASOS PARA LA SOLUCION DE PROBLEMAS - HTML
PASOS PARA LA SOLUCION DE PROBLEMAS - HTMLPASOS PARA LA SOLUCION DE PROBLEMAS - HTML
PASOS PARA LA SOLUCION DE PROBLEMAS - HTML
 
Informatica
InformaticaInformatica
Informatica
 
Srahi garcia ruiz_2am_programacion2
Srahi garcia ruiz_2am_programacion2Srahi garcia ruiz_2am_programacion2
Srahi garcia ruiz_2am_programacion2
 

Más de adark

Funciones
FuncionesFunciones
Funcionesadark
 
CONOCIMIENTO DE PROGRAMACIÓN Y UN LENGUAJE ESTRUCTURADO
CONOCIMIENTO DE PROGRAMACIÓN Y UN LENGUAJE ESTRUCTURADOCONOCIMIENTO DE PROGRAMACIÓN Y UN LENGUAJE ESTRUCTURADO
CONOCIMIENTO DE PROGRAMACIÓN Y UN LENGUAJE ESTRUCTURADOadark
 
estructuras de repeticion
estructuras de repeticionestructuras de repeticion
estructuras de repeticionadark
 
EJERCICIO Diagrama de Flujo
EJERCICIO Diagrama de FlujoEJERCICIO Diagrama de Flujo
EJERCICIO Diagrama de Flujoadark
 
1.1 Nuevas Tecnologias de la Informacion.
1.1 Nuevas Tecnologias de la Informacion.1.1 Nuevas Tecnologias de la Informacion.
1.1 Nuevas Tecnologias de la Informacion.adark
 
1.2 Elementos de un sistema computacional.
1.2 Elementos de un sistema computacional.1.2 Elementos de un sistema computacional.
1.2 Elementos de un sistema computacional.adark
 
1.3 Clasificacion de los sistemas operativos.
1.3 Clasificacion de los sistemas operativos.1.3 Clasificacion de los sistemas operativos.
1.3 Clasificacion de los sistemas operativos.adark
 
1.4 Paqueteria de Software.
1.4 Paqueteria de Software.1.4 Paqueteria de Software.
1.4 Paqueteria de Software.adark
 

Más de adark (10)

Funciones
FuncionesFunciones
Funciones
 
CONOCIMIENTO DE PROGRAMACIÓN Y UN LENGUAJE ESTRUCTURADO
CONOCIMIENTO DE PROGRAMACIÓN Y UN LENGUAJE ESTRUCTURADOCONOCIMIENTO DE PROGRAMACIÓN Y UN LENGUAJE ESTRUCTURADO
CONOCIMIENTO DE PROGRAMACIÓN Y UN LENGUAJE ESTRUCTURADO
 
71
7171
71
 
51
5151
51
 
estructuras de repeticion
estructuras de repeticionestructuras de repeticion
estructuras de repeticion
 
EJERCICIO Diagrama de Flujo
EJERCICIO Diagrama de FlujoEJERCICIO Diagrama de Flujo
EJERCICIO Diagrama de Flujo
 
1.1 Nuevas Tecnologias de la Informacion.
1.1 Nuevas Tecnologias de la Informacion.1.1 Nuevas Tecnologias de la Informacion.
1.1 Nuevas Tecnologias de la Informacion.
 
1.2 Elementos de un sistema computacional.
1.2 Elementos de un sistema computacional.1.2 Elementos de un sistema computacional.
1.2 Elementos de un sistema computacional.
 
1.3 Clasificacion de los sistemas operativos.
1.3 Clasificacion de los sistemas operativos.1.3 Clasificacion de los sistemas operativos.
1.3 Clasificacion de los sistemas operativos.
 
1.4 Paqueteria de Software.
1.4 Paqueteria de Software.1.4 Paqueteria de Software.
1.4 Paqueteria de Software.
 

Último

TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxlclcarmen
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdfBaker Publishing Company
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoFundación YOD YOD
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxzulyvero07
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMarjorie Burga
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADauxsoporte
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptxFelicitasAsuncionDia
 
CLASE - La visión y misión organizacionales.pdf
CLASE - La visión y misión organizacionales.pdfCLASE - La visión y misión organizacionales.pdf
CLASE - La visión y misión organizacionales.pdfJonathanCovena1
 
plan de capacitacion docente AIP 2024 clllll.pdf
plan de capacitacion docente  AIP 2024          clllll.pdfplan de capacitacion docente  AIP 2024          clllll.pdf
plan de capacitacion docente AIP 2024 clllll.pdfenelcielosiempre
 
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfGUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfPaolaRopero2
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Lourdes Feria
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAJAVIER SOLIS NOYOLA
 
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSOCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSYadi Campos
 
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...JAVIER SOLIS NOYOLA
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptxdeimerhdz21
 
Ecosistemas Natural, Rural y urbano 2021.pptx
Ecosistemas Natural, Rural y urbano  2021.pptxEcosistemas Natural, Rural y urbano  2021.pptx
Ecosistemas Natural, Rural y urbano 2021.pptxolgakaterin
 

Último (20)

TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativo
 
Unidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la InvestigaciónUnidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la Investigación
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
 
Sesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronósticoSesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronóstico
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptx
 
CLASE - La visión y misión organizacionales.pdf
CLASE - La visión y misión organizacionales.pdfCLASE - La visión y misión organizacionales.pdf
CLASE - La visión y misión organizacionales.pdf
 
Medición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptxMedición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptx
 
plan de capacitacion docente AIP 2024 clllll.pdf
plan de capacitacion docente  AIP 2024          clllll.pdfplan de capacitacion docente  AIP 2024          clllll.pdf
plan de capacitacion docente AIP 2024 clllll.pdf
 
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfGUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
 
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSOCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
 
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptx
 
Ecosistemas Natural, Rural y urbano 2021.pptx
Ecosistemas Natural, Rural y urbano  2021.pptxEcosistemas Natural, Rural y urbano  2021.pptx
Ecosistemas Natural, Rural y urbano 2021.pptx
 

METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS

  • 1. 2.1 METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS
  • 2. METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS El proceso de resolución de un problema con una computadora conduce a la escritura de un programa y su ejecución en la misma. 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.   Las fases de resolución de un problema con computadora son: Análisis del problema Diseño del algoritmo Codificación Compilación y ejecución Verificación Depuración Mantenimiento Documentación
  • 3. METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS Las dos primeras fases conducen a un diseño detallado escrito en forma de algoritmo. Durante la tercera etapa (codificación) se implementa el algoritmo en un código escrito en un lenguaje de programación, reflejando las ideas desarrolladas en las fases de análisis y diseño. La fase de compilación y ejecución traduce y ejecuta el programa. En las fases de verificación y depuración el programador busca errores de las etapas anteriores y los elimina. Comprobará que mientras más tiempo se invierta en la fase de análisis y diseño menos tiempo se perderá en la depuración del programa. Por último, se debe realizar la documentación del programa. Antes de conocer las tareas a realizar en cada fase, vamos a considerar el concepto y significado de la palabra algoritmo. La palabra algoritmo se deriva de la traducción al latín de la palabra Alkhôwarîzmi, nombre de un matemático y astrónomo árabe que escribió un tratado sobre manipulación de números y ecuaciones en el siglo IX. Un algoritmo es un método para resolver un problema mediante una serie de pasos precisos, definidos y finitos.
  • 4. METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS Análisis del problema La primera fase de la resolución de un problema con computadora es el análisis del problema. Esta fase requiere una clara definición, donde se contemple exactamente lo que debe hacer el programa y el resultado o solución deseada. Dado que se busca una solución por computadora, se precisan especificaciones detalladas de entrada y salida. La siguiente figura muestra los requisitos que se deben definir en el análisis,
  • 5. METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS Para poder definir bien un problema es conveniente responder a las siguientes preguntas: ¿Qué entradas e requieren? (tipo y cantidad) ¿Cuál es la salida deseada? (tipo y cantidad) ¿Qué método produce la salida deseada?
  • 6. METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS Ejemplo 1: Se desea obtener una tabla con las depreciaciones acumuladas y dos valores reales de cada año de un automóvil comprado en $380,000 en el año 1996, durante los seis años siguientes suponiendo un valor de recuperación o rescate de $45,000. Realizar el análisis del problema, conociendo la fórmula de depreciación anual constante D para cada año de vida útil. Proceso:  Depreciación acumulada Cálculo de la depreciación acumulada cada año Cálculo del valor del automóvil en cada año Entradas: Costo original Vida útil Valor de recuperación Salida: Depreciación anual por año Depreciación acumulada en cada año Valor del automóvil en cada año
  • 7. METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS La siguiente tabla muestra la salida solicitada: Fin del ejemplo 1
  • 8. METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS Diseño del algoritmo En la etapa de análisis del proceso de programación se determina qué hace el programa. En la etapa de diseño se determina cómo hace el programa la tarea solicitada. Los métodos más eficaces para el proceso de diseño en el refrán conocido “divide y vencerás”. Es decir, la resolución de un problema complejo se realiza dividiendo el problema en subproblemas y a continuación subdividir estos subproblemas en otros de nivel más bajo, hasta que pueda ser implementada una solución en la computadora. Este método se conoce técnicamente como diseño descendente (top-down) o modular. El proceso de dividir el problema en cada etapa y expresar cada paso en forma más detallada se denomina refinamiento sucesivo. Cada subproblema es resuelto mediante un módulo (subprograma) que tiene un solo punto de entrada y un solo punto de salida. Cualquier programa bien diseñado consta de un programa principal (el módulo de nivel más alto) que llama a subprogramas (módulos de nivel más bajo) que a su vez pueden llamar a otros subprogramas.
  • 9. METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS Herramientas de programación Las dos herramientas más utilizadas para diseñar algoritmos son: diagramas de flujo y pseudocódigos. Diagramas de flujo Un diagrama de flujo (flowchart) es una representación gráfica de un algoritmo. (los símbolos utilizados han sido normalizados por el Instituto Norteamericano de Normalización (ANSI, por sus siglas en inglés) y los más frecuentemente empleados se muestran en la siguiente tabla:
  • 10. METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS Herramientas de programación
  • 11. METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS Pseudocódigo El pseudocódigo es una herramienta de programación en que las instrucciones se escriben en palabras similares al inglés o español, que facilitan tanto la escritura como la lectura de programas. En esencia, el pseudocódigo se puede definir como un lenguaje de especificaciones de algoritmos. Aunque no existen reglas para escritura del pseudocódigo en español, se ha recogido una notación estándar que es muy empleada en los libros de programación en español. Las palabras reservadas básicas se representan en letras negritas minúsculas. Estas palabras son traducción libre de palabras reservadas de lenguajes como C, Pascal, etc.
  • 12. METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS Ejemplo 2 El pseudocódigo que resuelve el ejemplo 1 es el siguiente:  Previsiones de depreciación   Introducir costo inicial Vida útil Valor final de rescate (recuperación)   Imprimir encabezados Establecer el valor inicial del año Calcular depreciación mientras valor año <= vida útil hacer calcular depreciación acumulada calcular valor actual imprimir una línea en la tabla incrementar el valor del año fin de mientras
  • 13. METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS El diagrama de flujo se muestra en la siguiente figura: Fin del ejemplo 2
  • 14. METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS Codificación de un programa Una vez que el algoritmo se ha convertido en un programa fuente, es preciso introducirlo en memoria mediante el teclado y almacenarlo posteriormente en un disco. Esta operación se realiza con un programa editor, posteriormente el programa fuente se convierte en un archivo de programa que se guarda (graba) en disco. El programa fuente debe ser traducido a lenguaje máquina, este proceso se realiza con el compilador y el sistema operativo que se encarga particularmente de la compilación.
  • 15. METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS Codificación de un programa Si tras la compilación se presentan errores (errores de compilación) en el programa fuente, es preciso volver a editar el programa, corregir los errores y compilar nuevamente. Este proceso se repite hasta que no se producen errores, obteniéndose el programa objeto que todavía no es ejecutable directamente. Suponiendo que no existen errores en el programa fuente, se debe instruir al sistema operativo para que realice la fase de montaje o enlace (link), es decir, la carga del programa objeto con las librerías del programa de compilador. El proceso de montaje produce un programa ejecutable. Cuando el programa ejecutable se ha creado, se puede ya ejecutar desde el sistema operativo con solo teclear su nombre, desde sistema operativo DOS, o bien haciendo doble clic, desde Windows.
  • 16. METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS Verificación y depuración de un programa La verificación de un programa es el proceso de ejecución del programa con una amplia variedad de datos de entrada, llamados datos de test o prueba, que determinarán si el programa tiene errores (“bugs”). Para realizar la verificación se debe desarrollar una amplia gama de datos de test: valores normales de entrada, valores extremos de entrada que comprueben los límites del programa y valores de entrada que comprueben aspectos especiales del programa. La depuración es el proceso de encontrar los errores del programa y corregir o eliminar dichos errores.
  • 17. METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS Verificación y depuración de un programa Cuando se ejecuta un programa se pueden producir tres tipos de errores: Errores de compilación. Se producen normalmente por un uso incorrecto de las reglas del lenguaje de programación y suelen ser errores de sintaxis. Si existe un error de sintaxis, la computadora ni puede comprender la instrucción, no se obtendrá el programa objeto y el compilador imprimirá una lista de todos los errores encontrados durante la compilación. Errores de ejecución. Estos errores se producen por instrucciones que la computadora puede comprender pero no ejecutar. Ejemplos típicos son: división entre cero y raíces cuadradas de números negativos. En estos casos se detiene la ejecución del programa y se imprime un mensaje de error. 
  • 18. METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS Verificación y depuración de un programa Errores de lógica. Se producen en la lógica del programa y la fuente del error suele ser el diseño del algoritmo. Estos errores son los más difíciles de detectar, ya que el programa puede funcionar y no producir errores de compilación ni de ejecución, y sólo puede advertir el error por la obtención de resultados incorrectos. En este caso se debe volver a la fase de diseño del algoritmo, modificar el algoritmo, cambiar el programa fuente y compilar y ejecutar una vez más.
  • 19. METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS Documentación y mantenimiento La documentación de un problema consta de las descripciones de los pasos a dar en el proceso de resolución de un problema. La importancia de la documentación debe ser destacada por su decisiva influencia en el producto final. Programas pobremente documentados son difíciles de leer, más difíciles de depurar y casi imposibles de mantener y modificar. La documentación de un programa puede ser interna y externa. La documentación interna es la contenida en líneas de comentarios. La documentación externa incluye análisis, diagramas de flujo, pseudocódigos, manuales de usuario con instrucciones para ejecutar el programa y para interpretar los resultados. La documentación es vital cuando se desea corregir posibles errores futuros o bien cambiar el programa. Tales cambios se denominan mantenimiento del programa. Después de cada cambio la documentación debe ser actualizada para facilitar cambios posteriores.