Este documento describe los pasos para resolver problemas utilizando técnicas de programación, incluyendo análisis, diseño de algoritmos y codificación. Explica cada una de estas fases del proceso de programación, así como conceptos clave como pseudocódigo, diagramas de flujo y representación de datos.
3. ANÁLISIS CÓDIGO ALGORITMO TÉCNICA DE SOLUCIÓN DE PROBLEMAS El proceso de construir un programa tiene que pasar necesariamente por tres fases: Análisis Algoritmo Codificación La omisión de una de estas fases no garantiza una correcta solución.
4. ANÁLISIS DEL PROBLEMA SE DEBE COMPRENDER Y ENTENDER EL PROBLEMA E IDENTIFICAR QUE SE DESEA OBTENER . AYUDAR EL PROPÓSITO DE ESTA FASE Al programador
5. ANÁLISIS DEL PROBLEMA SI SE DESEA LLEGAR A El problema Se debe estar bien entendido Solución Satisfactoria SE DEBEN IDENTIFICAR LAS ESPECIFICACIONES DE SALIDA Y ENTRADA
6. ANÁLISIS DEL PROBLEMA Se debe aplicar TODO EL CONOCIMIENTO que se ha ADQUIRIDO hasta el momento. Y además las DIFERENTES TÉCNICAS que se adquiere mediante LA SOLUCIÓN DE MUCHOS PROBLEMAS.
7. ANÁLISIS DEL PROBLEMA En esta fase se debe realizar siempre de la siguiente manera: La primera pregunta siempre será: ¿Qué es lo que se quiere mostrar como resultado final? Luego la siguiente sería: ¿Cómo obtengo ese resultado? ¿Qué datos necesito para obtener el resultado?
9. ANÁLISIS DEL PROBLEMA Ejemplo: Un estudiante ha obtenido en su primer examen 12, y se quiere saber cual será su promedio final si todavía le faltan dos evaluaciones más. ¿Cuál será mi promedio final?
10. ANÁLISIS DEL PROBLEMA ¿Qué es lo que se quiere mostrar como resultado final? Se va ha mostrar : Promedio Final (PF) ¿Cómo obtengo ese resultado? ¿Qué datos necesito para obtener el resultado? PROMEDIO = SUMA DE LAS TRES NOTAS (ST) 3
11. ANÁLISIS DEL PROBLEMA ST se tendrá que calcular ST = EXAMEN1 + EXAMEN2 + EXAMEN3 Examen1 (EX1) esta en el enunciado y es 12 Examen2 (EX2) y Examen3 (EX3) se ingresarán por teclado.
13. DISEÑO DEL ALGORITMO Para que el computador Pueda solucionar un problema se le debe proporcionar una Pasos sucesivos que indican las instrucciones Secuencia Lógica de Instrucciones A realizar por la máquina constituyen el algoritmo
14. DISEÑO DEL ALGORITMO Se denomina algoritmo al conjunto de instrucciones que especifican la secuencia de operaciones a realizar para resolver un problema específico. Para llegar a cierto resultado comprobable. A seguir
15. DISEÑO DEL ALGORITMO El computador Los algoritmos No dependen Lenguaje de programación
16. DISEÑO DEL ALGORITMO Identifica que resultado se va ha mostrar. Elaboración del algoritmo Como se va a obtener el resultado Datos que se necesita.
17. DISEÑO DEL ALGORITMO Las características fundamentales que debe cumplir cualquier algoritmo son: Ordenado Exacto Finito
18. DISEÑO DEL ALGORITMO Formas de representar los algoritmos La representación de los algoritmos se realiza a través de las herramientas de ayuda tales como: Los pseudocódigos Las cartas N-S Los diagramas de flujo
19. DISEÑO DEL ALGORITMO LOS PSEUDOCÓDIGOS SERIE DE NORMAS LÉXICAS Y GRAMATICALES QUE NO TIENEN LA RIGIDEZ DE UN LENGUAJE DE PROGRAMACIÓN ES UNA HERRAMIENTA DE DISEÑO
20. ANÁLISIS DEL PROBLEMA VENTAJA DEL PSEUDOCÓDIGO El programador EN SU USO EN LA PLANIFICACIÓN DE UN PROGRAMA Se puede CONCENTRAR en la LÓGICA y en las ESTRUCTURAS DE CONTROL y no se preocupa de las reglas de un lenguaje específico.
21. ANÁLISIS DEL PROBLEMA El pseudocódigo describe un algoritmo utilizando: Una mezcla de frase en lenguaje común Instrucciones de programación y Palabras claves Que definen las estructuras básicas. Su objetivo es permitir que el programador se centre en los aspectos lógicos de la solución a un problema
22.
23. Es muy fácil pasar de Pseudocódigo a un programa en algún lenguaje de programación.
24.
25. ANÁLISIS DEL PROBLEMA Escribir En un algoritmo la palabra escribir significa mostrar en la pantalla lo que esta almacenado en la memoria principal del computador Ejemplo: Escribir A Se mostrará en pantalla el valor que esta en la memoria del computador y que se encuentra identificado como A
26. ANÁLISIS DEL PROBLEMA La flecha : La flecha apuntandohacialaizquierdaesel símbolo de asignaciónen una instrucción. Es decir indica la dirección del flujo del valor que se encuentra a derecha y que va ha ser almacenado en el elemento de la izquierda.
27. ANÁLISIS DEL PROBLEMA Ejemplo: A ← 5 El valor de 5 va ha ser almacenadoenA B ← P + Q El resultado de sumarel valor almacenadoen P más el valor almacenadoen Q va ha ser almacenadoen B
28. ANÁLISIS DEL PROBLEMA Ejemplo: Un estudiante ha obtenido en su primer examen 12, y se quiere saber cual será su promedio final si todavía le faltan dos evaluaciones más. ¿Cuál será mi promedio final? Inicio Leer n2, n3 Sn ←n1+n2+n3 Pf ← Sn/3 Escribir Pf Fin
29. DIAGRAMA DE FLUJO Un diagrama de flujo es la representación gráfica de un proceso. Un diagrama de flujo tiene como objetivo facilitarnos la comprensión de un algoritmo o simplificar el análisis de un proceso. Este algoritmo … Me ayuda a comprender mejor el análisis del proceso
30. DIAGRAMA DE FLUJO El diagrama de flujo consta de símbolos como cuadros, rombos, óvalos, etc. que representan a cada uno de los pasos a seguir durante un proceso. Estos símbolos están conectados por flechas de un solo sentido y nos indican la secuencia en que se van desarrollando las distintas tareas.
39. DIAGRAMA DE FLUJO En la diagramación, también se cuenta con una serie de símbolos auxiliares que no intervienen en el proceso del algoritmo, pero que pueden ser útiles para ayudar a dar claridad a los diagramas, algunos de ellos son los siguientes:
41. LAS CARTAS N-S o DIAGRAMAS ESTRUCTURADOS(NASSI – SCHNEIDERMAN) La carta N-S de Nassi-Schneiderman, también conocido como diagrama de Chapin, es como un diagrama de flujo en el que se omiten las flechas de unión y las cajas son contiguas. Las acciones sucesivas se escriben en cajas sucesivas, y, como en los diagramas de flujo, se pueden escribir diferentes acciones en una caja.
42. LAS CARTAS N-S o DIAGRAMAS ESTRUCTURADOS(NASSI – SCHNEIDERMAN) Los diagramas estructurados, son una técnica que permite formular algoritmos mediante una representación geométrica y de asignación de espacios de un bloque específico.
43. LAS CARTAS N-S o DIAGRAMAS ESTRUCTURADOS(NASSI – SCHNEIDERMAN) La representación de las principales formas son: Se utiliza para el ingreso y Salida de Datos, también para indicar un proceso. Se utiliza para operaciones de selección simple . Se utiliza para operaciones de selección múltiple.
44. CODIFICACIÓN Y EJECUCIÓN DEL PROGRAMA Una vez que el algoritmo está diseñado y representado mediante una herramienta de construcción de algoritmo : Pseudocódigo Carta N-S Diagrama de flujo Se lleva a cabo la fase de la ejecución del programa, mediante la computadora, la cual se divide a su vez en las siguientes subfases:
45. CODIFICACIÓN Y EJECUCIÓN DEL PROGRAMA Codificación del algoritmo, que consiste en utilizar un lenguaje de programación siguiendo las reglas gramaticales del mismo (sintaxis) para convertir el algoritmo en un programa. También se puede decir que es la generación real del programa con un lenguaje de programación. En esta etapa se hace uso de la lógica que desarrolló en el paso del diseño del programa para efectivamente generar un programa. Se debe seleccionar el lenguaje apropiado para resolver el problema.
46. Ejecución del programa utilizando un compilador del lenguaje Comprobación y depuración del programa Depurar es correr el programa en una computadora y corregir las partes que no funcionan. En esta fase se comprueba el funcionamiento de cada programa y esto se hace con datos reales o ficticios.
47. Ejecución del programa utilizando un compilador del lenguaje Cuando los programas están depurados, se prueban. Cuando los programas se depuran, se pueden encontrar los siguientes errores: De sintaxis o de compilación. De ejecución De lógica De especificación. Errores
48. REPRESENTACIÓN DE DATOS Un dato se define como la expresión general que describe los objetos con los cuales opera una computadora. Los datos de entrada se transforman por el programa, después de las etapas intermedias, en datos de salida.
49. REPRESENTACIÓN DE DATOS Tipos de Datos Los datos se clasifican en diversas categorías, según el tipo de máquina o del lenguaje en uso. Generalmente se puede encontrar las siguientes categorías: Numéricos Lógicos Texto
66. REPRESENTACIÓN DE DATOS LÓGICO También se le denomina Booleano, es aquél dato que solo puede tomar uno de dos valores: Falso y verdadero. Se utiliza para representar las alternativas (si/no) a determinadas condiciones. Por ejemplo, cuando se pide si un valor entero sea primo, la respuesta será verdadera Falso Verdadero