Unidad 1

14
*UNIDAD 1* JACQUELINE ESPINOZA ALPIREZ 4º B INFORMATICA *Desarrollar el proceso de solución de un problema *

Transcript of Unidad 1

Page 1: Unidad 1

*UNIDAD 1*JACQUELINE ESPINOZA ALPIREZ4º B INFORMATICA

*Desarrollar el proceso de solución de un problema*

Page 2: Unidad 1

1.Desarrollar el proceso de solución de un

problema

La resolución de un problema mediante un ordenador consiste en el proceso que a partir de la descripción de un problema, expresado habitualmente en lenguaje natural y en términos propios del dominio del problema, permite desarrollar un programa que resuelva dicho problema.Este proceso exige los siguientes pasos:Análisis del problema.Diseño o desarrollo de un algoritmo.Transformación del algoritmo en un programa (codificación).Ejecución y validación del programa.Los dos primeros pasos son los más difíciles del proceso. Una vez analizado el problema y obtenido un algoritmo que lo resuelva, su transformación a un programa de ordenador es una tarea de mera traducción al lenguaje de programación deseado.

Page 3: Unidad 1
Page 4: Unidad 1

Las cuatro etapas de la resolución de problemas con una computadora se dan a continuación:1. Entender el problema: un modo de manejar un problema es la de imaginar el tipo de salida que debe producirse para distintas entradas posibles. Después determinar el tipo de proceso necesario para convertir la entrada en salida.2. Encontrar un método de solución: esto es, diseñar un algoritmo que le permita definir los pasos que llevarán a la solución del problema.3. Traducir el método a código de computadora: este paso es generalmente sencillo cuando se ha concretado un método paso a paso y se conoce la sintaxis del lenguaje de programación.4. Probar y depurar: si la ejecución del programa no es la correcta, se deben encontrar y corregir los errores que contenga. Este proceso se llama depuración. Posteriormente debe ejecutarse el programa con una amplia variedad de entradas para verificar que la lógica del programa esté correcta.

Page 5: Unidad 1

1.1.Identificar el problema

Lo primero que nos interesa es conocer, saber, lo que será investigado: Por qué, para qué, cual es el valor o la importancia del hecho o fenómeno a investigar. Si la investigación a realizar tiene criterios de prioridad, novedad, oportunidad, conformismo o comportamiento.

¿CÓMO SE IDENTIFICA UN PROBLEMA?En la elección del tema, lo más recomendable es primero obtener, a través de una lluvia de ideas, una lista de cinco o seis posibles temas. Las fuentes de potenciales de ideas pueden ser diversas: bibliografía, expertos, profesores, compañeros, lugar de trabajo, la vida cotidiana, etc.

. Identificar el problema. Identificar el problema es esencial para buscar las posibles soluciones. Con el paso del tiempo, la tecnología avanza y se dan nuevas soluciones cada vez más atrevidas e ingeniosas.

Page 6: Unidad 1

1.2. Análisis del problema

El análisis del problema involucra capturar el máximo de información referente a este, obtener la visión del mismo por parte de los involucrados y generar un modelo para cada una de estas visiones. Se deben refinar estos modelos hasta obtener una o varias representaciones (modelos) del problema, los que posibilitan su análisis. Estos modelos que describen las visiones del problema son los que posibilitarán que se vislumbre alguna solución.Se debe modelar tanto el problema como la situación esperada, de modo de poder diseñar la forma de llegar del estado actual al estado objetivo(problema solucionado).Lo relevante de este punto es que el análisis es una tarea creativa que requiere de capacidades de abstracción y uso de lenguajes que faciliten la tarea de generación de modelos y análisis de los mismos. En el análisis del problema se deben contestar las siguientes preguntas:¿Cuál es el problema? (¿Cuál es el estado actual considerado insatisfactorio?)¿En qué forma se consideraría el problema solucionado? (¿Cuál es el estado deseado?)¿Qué restricciones existen para llegar a esa solución?

Page 7: Unidad 1
Page 8: Unidad 1

1.3. Elaborar algoritmos de la solución del problema

Definición de Algoritmo.La palabra algoritmo proviene del nombre del matemático

islámico Abu Jafar Muhamed ibn Musä al Khwàrizm quien murió en el año 847 A.C.

Un algoritmo para un problema es una secuencia de pasos a seguir, no ambiguos, finitos y determinísticos que llevan a la solución de un problema,

Para poder elaborar un algoritmo, es necesario recordar las siguientes observaciones:

1. El algoritmo debe escribirse como una expresión en algún lenguaje:¨ Descripción narrada¨ Notación matemática¨ Pseudocódigo¨ Diagramas de flujo¨ Lenguaje de computadora.

Page 9: Unidad 1

2. Exactamente cada pregunta del problema debe ser contestada por la ejecución del algoritmo.

3. Cualquiera que sean los valores de las entradas, la ejecución terminará después de algún número finito de pasos.

Por ello, para que una computadora pueda resolver un problema concreto, el usuarioy no la computadora, debe diseñar un método adecuado para la solución. La computadorasimplemente llevará a cabo paso a paso la lista de las instrucciones formuladas en elprograma del usuario.

Page 10: Unidad 1
Page 11: Unidad 1

1.4. Elaborar diagramas de flujo de la solución del problema

Los Diagramas de Flujo:Son la representación gráfica de la solución algorítmica de un problema.Para diseñarlos se utilizan determinados símbolos o figuras que representan una acción dentro del procedimiento.Utilizan unos símbolos normalizados, con los pasos del algoritmo escritos en el símbolo adecuado y los símbolos unidos con flechas, denominadas líneas de flujo, que indican el orden en que los pasos deben ser ejecutados.

Para su elaboración se siguen ciertas reglas:Se escribe de arriba hacia abajo y de izquierda a derechaSiempre se usan flechas verticales u horizontales, jamás curvasSe debe evitar cruce de flujosEn cada paso se debe expresar una acción concretaSecuencia de flujo normal en una solución de problemaTiene un inicioUna lectura o entrada de datosEl proceso de datosUna salida de informaciónUn final

Page 12: Unidad 1

VENTAJAS DE USAR DIAGRAMAS DE FLUJORápida comprensión de las relacionesAnálisis efectivo de las diferentes secciones del programaPueden usarse como modelos de trabajo en el diseño de nuevos programas o sistemasComunicación con el usuarioDocumentación adecuada de los programasCodificación eficaz de los programasDepuración y pruebas ordenadas de programas

Page 13: Unidad 1

Muchas veces, en los libros de texto y publicaciones científicas relacionadas con la informática y la computación numérica, se utilizan pseudocódigo en la descripción de algoritmos, de manera que todos los programadores puedan entenderlo, aunque no todos conozcan el mismo lenguaje de programación. Generalmente, en los libros de texto, hay una explicación que acompaña la introducción que explica las convenciones particulares en uso. El nivel de detalle del pseudocódigo puede, en algunos casos, acercarse a la de formalizar los idiomas de propósito general.Un programador que tiene que aplicar un algoritmo específico, sobre todo uno des familiarizado, generalmente comienza con una descripción en pseudocódigo, y luego "traduce" esa descripción en el lenguaje de programación meta y lo modifica para que interactúe correctamente con el resto del programa. Los programadores también pueden iniciar un proyecto describiendo la forma del código en pseudocódigo en el papel antes de escribirlo en su lenguaje de programación.

1.5. Crear Pseudocódigo de la

solución del problema

Page 14: Unidad 1

La prueba de escritorio es una herramienta útil para entender que hace un determinado algoritmo, o para verificar que un algoritmo cumple con la especificación sin necesidad de ejecutarlo. Básicamente, una prueba de escritorio es una ejecución ‘a mano’ del algoritmo, por lo tanto se debe llevar registro de los valores que va tomando cada una de las variables involucradas en el mismo.

1.6. Prueba de escritorio de la

solución del problema