Source: http://docplayer.es/23583591-La-resolucion-de-un-problema.html
Timestamp: 2018-12-16 15:46:45+00:00

Document:
La resolución de un problema - PDF
Download "La resolución de un problema"
María Mercedes Catalina Zúñiga Bustamante
1 CAP. 2. ALGORITMOS Y PROGRAMAS 2.1. Solución de problemas por computadora La resolución de problemas por computadora, es importante para que las personas o usuarios aprendan a programar de manera general, utilizando los lenguajes de programación lo cual permiten hacer programas en la computadora como una herramienta para la resolución de problemas. Precisamente, la tarea de la programación consiste en describir lo que debe hacer el computador para resolver un problema concreto en un lenguaje de programación. La resolución de un problema se divide en tres fases fundamentales e importantes, los cuales son: Análisis del problema Diseño o desarrollo del algoritmo Resolución del algoritmo en la computadora El análisis del problema requiere que el problema sea definido y comprendido claramente para que pueda ser analizado con todo detalle Desarrollar o diseñar un algoritmo es un procedimiento paso a paso para solucionar el problema planteado. Para resolver el algoritmo mediante una computadora se necesita codificar el algoritmo en un lenguaje de programación PASCAL, C++, Borland C++, DELPHI y otros, significa convertir el algoritmo en un programa, que puede ser ejecutado y comprobado. RESOLUCIÓN DE UN PROBLEMA ANALISIS DEL PROBLEMA DISEÑO DEL ALGORITMO RESOLUCIÓN DEL PROBLEMA EN LA COMPUTADORA Análisis del problema La resolución de un problema La primera fase de la resolución de un problema por computadora es el análisis del problema, esta fase requiere una clara definición, es decir el Pág. 1
2 problema debe estar bien definido si se desea llegar a una solución eficaz, se precisan especificaciones detalladas de entrada y salida Para poder definir un problema es conveniente responder a las siguientes preguntas Problema: Qué entradas se requieren? Cuál es la salida deseada? Qué método produce la salida deseada? Ej.: Leer el radio de un circulo y calcular e imprimir su superficie y la longitud de la circunferencia. Análisis Entrada: Radio del circulo (variable RADIO) Salida: Superficie del circulo (variable AREA) Longitud del circulo (variable PERIMETRO) 2 Método: Aplicamos las fórmulas: A r P 2 r Diseño de algoritmos En la etapa del diseño de algoritmos, se determina como se hace el programa, el proceso se convierte los resultados del análisis del problema en un diseño modular con refinamientos sucesivos que permitan una posterior traducción a un lenguaje de programación (PASCAL). El diseño del algoritmo es independiente del lenguaje de programación en el que vaya a codificar posteriormente. Herramientas de programación.- Para poder realizar el diseño del algoritmo, es necesario utilizar las herramientas de programación más utilizados comúnmente para diseñar algoritmos los cuales son: Diagrama de flujo Pseudocódigo Escritura de un algoritmo Escribir un algoritmo, consiste en realizare una descripción paso a paso con un lenguaje natural del citado algoritmo, estos tiene las siguientes propiedades: Pág. 2
3 Debe estar seguida de alguna secuencia definida de pasos hasta que se obtenga un resultado coherente. Solo puede ejecutarse una operación a la vez. Ej.: Qué hacer para ver la película TIBURON? La respuesta es muy sencilla ya puede ser descrita en forma de algoritmo general de modo similar: Ir al cine Comprar una entrada (billete o ticket) Ver la película Regresar a casa El algoritmo cuenta de cuatro acciones básicas es muy sencillo, si embargo como ya se ha indicado el algoritmo se descompondrá en pasos más simples en un procedimiento denominado refinamiento sucesivo, ya que cada acción para descomponerse a su vez en otras acciones simples. Ej.: Ir al cine 1. Inicio 2. Ver la cartelera del cine en el periódico 3. Si no proyectar TIBURON entonces 3.1. Decidir otra actividad 3.2. Bifurcar al paso Si_no 3.3. Ir al cine Fin_si 4. Si hay cola entonces 4.1. Ponerse en ella 4.2. Mientras haya personas delante hacer Avanzar en la cola Fin_mientras Fin_si 5. Si hay localidades entonces 5.1. Comprar una entrada 5.2. Pasar a la sala 5.3. Localizar las butacas 5.4. Mientras proyectan la película hacer Ver la película Fin_mientras Pág. 3
4 5.5. Abandonar el cine Si_no 5.6. Refunfuñar Fin_si 6. Volver a casa 7. Fin Representación gráfica de algoritmos Para representar un algoritmo se debe representar de forma gráfica o numéricamente, de modo que las sucesivas acciones no dependan de las sintaxis de ningún lenguaje de programación, si no que la descripción pueda servir fácilmente para la transformación en un programa. Los métodos usuales para representar un algoritmo son: Diagrama de flujo Diagrama N-S (Nassi-Schneiderman) Lenguajes de especificación de algoritmos: Pseudocódigo Lenguaje español Formulas Diagrama de flujo Un diagrama de flujo (FLOWCHART) es la representación gráfica de un algoritmo. También se puede decir es la representación detallada en forma gráfica utilizando los símbolos normalizados por (ANSI). La representación gráfica se da cuando varios símbolos (que indican diferentes procesos en la computadora) se relacionan entre sí mediante líneas que indican el orden en que se deben ejecutar los procesos en la computadora para producir resultados. Los símbolos utilizados has sido normalizados por el Instituto Norteamericano de Normalización y los más frecuentes empleados son: Símbolo Nombre Especificación INICIO/FIN Terminal Sirve para iniciar y terminar un programa. Pág. 4
5 Línea de flujo Representa el flujo secuencial del programa. ENTRADA / SALIDA Paralelogramo Sirve para entrada y salida. CONDICIÓN NO SI Rombo Sirve para caja de decisión PROCESO Rectángulo Sirve para procesar algún tipo de proceso. SUBPROGRAMA Rectángulo Proceso predefinido, que se utiliza para los subprogramas. Conectores Que sirve para conectar fuera de la página y conector dentro de la página Documento Indica la salida de información por impresora Pág. 5
6 Entrada Pantalla Entrada de datos desde el teclado Indica la salida de información en la pantalla o monitor Pseudocódigo El pseudocódigo es una herramienta de programación en que las instrucciones se escriben en palabras similares al íngles o español, dentro de la programación estructurada, para realizar el diseño de un programa que facilitan tanto la escritura como la lectura de programas. En esencia el pseudocódigo se puede definir como la representación narrativa de los pasos que debe seguir un algoritmo para dar solución a un problema determinado, el pseudocódigo utiliza palabras que indican el proceso a realizar Resolución de problemas mediante computadora (Codificación) Es la escritura de un algoritmo utilizando un lenguaje de programación que debe ser lo más claro posible y estructurada, de modo que su lectura facilite considerablemente el entendimiento del algoritmo y su posterior codificación. Tras la codificación del programa deberá ejecutarse en una computadora y continuación de comprobar los resultados pasar a la fase final de documentación. Resolución del problema con computadora Codificación del programa Ejecución del programa Comprobación del programa Resolución del problema mediante computadora 2.2. Conceptos de un programa Pág. 6
7 Un programa es un conjunto de instrucciones u órdenes dada a la máquina que producirán la ejecución de una determinada tarea. Un programa es un medio para conseguir un determinado fin. El proceso de programación es un proceso de solución de problemas desarrollando las siguientes fases: Definición del problema Diseño del algoritmo Codificación del programa Depuración y verificación 2.3. Partes de un programa Diagrama de flujo Es un conjunto de especificaciones que deben contener el programa: D O C U M E N T A C I O N Entrada Programa (algoritmo de resolución) Salida El dispositivo de entrada (teclado) es la entrada de datos operación de lectura o acción de leer que es una El dispositivo de salida son los dispositivos o periféricos de salida (pantalla), impresora, discos operación de salida de datos se conoce también como escritura, o acción de escribir. El algoritmo de solución es un método que permite resolver el problema mediante una secuencia de pasos lógicos Instrucciones y tipos de instrucciones Es el proceso de diseño del algoritmo y posteriormente la codificación del programa consiste en definir las acciones o instrucciones que resolverán el problema, estas acciones o instrucciones se deben escribir y posteriormente almacenar en la memoria en el mismo orden en que han de ejecutarse de manera secuencial. Un programa puede ser lineal o no lineal. Pág. 7
8 Un programa lineal es que las instrucciones se ejecutan secuencialmente, sin bifurcaciones, decisión, ni comparaciones, en el caso de los algoritmos las instrucciones suelen conocer como acciones y se tendrá: Instrucción 1 Instrucción 2 Instrucción n Acción 1 Acción 2 Acción n Un programa es no lineal cuando se interrumpe la secuencia mediante instrucciones de bifurcación. Acción 1 Acción 2 Acción x Acción n Las instrucciones dependen de un lenguaje de programación estudiaremos las Instrucciones o acciones básicas que se pueden implementar de modo general en un algoritmo, se clasifican como: 1. Instrucciones de Inicio / fin 2. Instrucciones de Asignación 3. Instrucciones de Lectura 4. Instrucciones de Escritura 5. Instrucciones de Bifurcación Instrucciones de bifurcación El desarrollo lineal de un programa se interrumpe cuando se ejecuta una bifurcación, las bifurcaciones pueden ser según el punto del programa a donde se bifurca hacia adelante o hacia atrás. Bifurcación Adelante (+) Bifurcación atrás (-) Pág. 8
9 Instrucción 1 Instrucción 2 Instrucción 3 Instrucción 8 Ultima instrucción Instrucción 1 Instrucción 2 Instrucción 3 Instrucción 12 Ultima instrucción Las bifurcaciones en el flujo de un programa pueden realizarse de un modo incondicional o condicional Bifurcación incondicional.- La bifurcación se realiza siempre que el flujo del programa pase por la instrucción sin necesidad del cumplimiento de ninguna condición. Acción 1 Acción 2 Acción 3 Bifurcación condicional.- La bifurcación depende del cumplimiento de una determinada condición, si se cumple la condición el flujo sigue ejecutando la Acción F2 si no se cumple se ejecuta la Acción F1 Condición? Acción F1 Acción F Elementos básicos de programación Pág. 9
10 En programación se debe separar la diferencia entre el diseño del algoritmo y su implementación es decir entre los conceptos de programación y el medio en que ellos se implementan en un lenguaje especifico. Los elementos básicos constituidos de un programa o algoritmo son: Palabras reservadas (inicio, fin, si _ entonces, etc.) Identificadores (nombres de las variables esencialmente) Caracteres especiales (coma, apóstrofe, etc.) Constantes Variables Expresiones Instrucciones Elementos que forman parte de los programas (Diseño Codificación) Bucles Bucles Contadores Acumuladores Interruptores Estructuras o Secuenciales _ Selectivas _ Repetitivas. Un bucle es un segmento de un algoritmo o programa, cuyas instrucciones se repiten un número determinado de veces mientras se cumple una determinada condición (existe o es verdadera la condición). El bucle consta de tres partes: Contadores Decisión Cuerpo del bucle Salida del bucle Los procesos repetitivos son la base del uso de las computadoras, en estos procesos se necesitan normalmente contar los sucesos o acciones internas del bucle. Un contador es una variable cuyo valor se incrementa o decremento en una cantidad constante en cada iteración Acumuladores Pág. 10
11 Un acumulador o llamado totalizador es una variable cuya misión es almacenar cantidades variables resultantes de sumas sucesivas, realiza la misma función que un contador con la diferencia de que el incremento o decremento de cada suma es variable en lugar de constante, como es el caso del contador. Se representa por la instrucción S S + N, donde N es una variable y no una constante Interruptores Un interruptor o conmutador (SWITCH) a veces se le denomina indicador, bandera (FLAG) es una variable que puede tomar diversos valores a lo largo de la ejecución del programa y que permite comunicar información de una parte a otra del mismo, estos pueden tomar dos valores diferentes 1 y 0 (Encendido / apagado ó Abierto / cerrado). =1 SW? =0 Acción F1 Acción F2 Si SW es igual a 1 se ejecuta La acción F1 Si SW es igual a 0 se ejecuta La acción F Estructuras En mayo de 1966 Bohm y Jacopini demostraron que un programa propio puede ser escrito utilizando solamente tres tipos de estructuras de control. Secuenciales Selectivas Repetitivas Pág. 11
Resolución de problemas mediante algoritmos Metodología de resolución 1.Planteamiento del problema a)datos de entrada y de salida b)algoritmo conceptual básico 2.Diseño del algoritmo (pseudocódigo) 3.Prueba
Fundamentos de Programación IES Gonzalo Nazareno 2.- Análisis del problema. Pseudocódigo UNIDAD DIDÁCTICA 2: ANÁLISIS DEL PROBLEMA: PSEUDOCÓDICO.
UNIDAD DIDÁCTICA 2: ANÁLISIS DEL PROBLEMA: PSEUDOCÓDICO. 1 La resolución de problemas. El ordenador es una herramienta para la resolución de problemas. La resolución de problemas la podemos dividir en:
LABORATORIO TIC 2 Primer Parcial Etapas 1 y 2.
LORTORIO TI 2 Primer Parcial Etapas 1 y 2. 1. es la traducción del algoritmo o diagrama de flujo a un lenguaje de programación, de acuerdo a las reglas gramaticales o sintaxis del mismo. a) efinición del
Introducción a la Programación. Andrés Arcia Departamento de Computación Escuela de Ingeniería de Sistemas Facultad de Ingeniería Universidad de Los Andes Depende de su estilo de vida, pero para el ciudadano

References: resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 Resolución 
 RESOLUCIÓN 
 RESOLUCIÓN 
 resolución 
 resolución 
 Resolución 
 Resolución 
 Resolución 

Resolución 
 resolución 
 resolución 
 resolución 
 resolución