Resolución de Problemas

Slides:



Advertisements
Presentaciones similares
¿PARA QUE ESTAMOS AQUÍ? LOS OBJETIVOS DE LA ENCARNACIÓN.
Advertisements

SIES – SISTEMA INTEGRADO DE EDUCACIÓN SUPERIOR
el 1, el 4 y el 9 tres cuadrados perfectos autosuficientes
Algoritmos y Programas
“Planificación de Aplicaciones Web”
Complejidad Computacional
Aranda Fernández, Miguel Ángel García Redondo, Luis Miguel
4. ANÁLISIS FACTORIAL Introducción Modelo factorial ortogonal
DIAGRAMAS DE CASOS DE USO
Fundamentos de Diseño de Software INFT.1
Resultado 2.1 con actividad 2.1.1
Introduccion a UML Wilson Peláez Hernández
Nuestro reto es educar al pensamiento, para que razone de acuerdo a ciertas reglas; con ello podremos ser más eficientes al momento en que ordenamos.
CLASE 4 EL ENSAMBLADOR.
CLASE 3 SOFTWARE DEL MICROPROCESADOR
APLICAWEB SERVICIOS LEGALES DE PUERTO RICO
DESCRIPCION DE SISTEMAS
Programación 4to. Bachillerato
SEGMENTACION DE MERCADOS
03 Estudio del mercado El estudio del mercado trata de averiguar la respuesta del mercado ante un producto o servicio, con el fin de plantear la estrategia.
Sistemas de Ecuaciones
Ejemplos ALGORITMOS.
Resolución de Problemas Algoritmos y Programación
INFORMÁTICA II.
AACS Correcto muestreo de suelos Ing. Agr. Pablo Marasas
Capítulo 5 Estados Financieros.
50 principios 1. Los clientes asumen el mando.
Proyecto para Centros que trabajan una vez por semana.
Investigación de Operaciones II
Ecuaciones Cuadráticas
Ecuaciones y Resolución de Ecuaciones Lineales
Expresiones Racionales
La minimización de los costes
Comité Nacional de Información Bogotá, Julio 27 de 2011 Consejo Nacional de Operación de Gas Natural 1 ESTADISTICAS NACIONALES DE OFERTA Y DEMANDA DE GAS.
3. Métodos de resolución Ecuaciones algebraicas lineales
Proyecto Fin de Carrera E.T.S. Ingeniería Informática 26 de Septiembre de 2006 DESARROLLO DE UN COMPONENTE TECLADO ALUMNO: Fco. Javier Sánchez Ramos TUTORES:
Plan de Desarrollo “TODOS SOMOS FACATATIVA 2012 – 2015”
CULENDARIO 2007 Para los Patanes.
Reunión de los requerimientos de la red
SI QUIERES VERLO DALE AL CLICK
Investigación en acción
El programa de obra es una red y la metodología para resolver la duración de la red y determinar las tareas que pueden retrasar con mayor facilidad la.
Ciclo de formulación del proyecto.
Sistemas de Ecuaciones lineales
Inteligencia Artificial Resolver problemas mediante búsqueda
Análisis Diseño y Desarrollo
Inteligencia Artificial Resolver problemas mediante búsqueda
Solución de problema Herramientas aplicables
ESCUELA PROFESIONAL DE INGENIERIA INDUSTRIAL CURSO: GESTION DE LA CALIDAD ING.ELIZABETH FERG 1.
1 LOS PROBLEMAS DE DISEÑO EN INGENIERÍA: CONCEPTO Y FORMULACIÓN NELSON VÍLCHEZ UNIVERSIDAD TECNOLÓGICA DEL CENTRO COORDINACIÓN DE INGENIERÍA.
Direccionamiento de la red: IPv4
Derivación de Contraejemplos para Model Checking Cuantitativo
 2003 Prentice Hall, Inc. All rights reserved. 1 Capítulo 6: Clases y Abstracción de Datos Índice del capítulo 6.1 Introducción 6.2 Estructuras 6.3 Clases.
DISEÑO DE LA PROPUESTA DEL PROCESO DE RENDICION DE CUENTAS 2014 Coordinación General de Planificación Ministerio de Agricultura, Ganadería, Acuacultura.
Proceso de información en la computadora
Fundamentos de programación
LENGUAJES DE PROGRAMACIÓN
Tae Programación WEB Ventajas de los ordenadores ( compus pa los cuates ) Que es la Programación? Que es un lenguaje de programación? Algoritmo Que es.
UNIDAD 2. ALGORITMOS Y ESTRUCTURAS DE DATOS.
PENSAMIENTO ANALÍTICO SISTÉMICO DAISY KATERINE RODRÍGUEZ DURÁN
3. Resolución de Problemas..  Conocer lo que se quiere resolver.  Buscar las herramientas para poder solucionar el problema.  Implementar la solución.
COMPLETA LOS ESPACIOS CON LA PALABRA ADECUADA 1.LOS _______________________ SE DEFINEN COMO LA _________________LÓGICA DE _________PARA SOLUCIONAR UN.
Introducción a la programación
Elaboración de algoritmos usando lógica de programación
Algoritmos Programación
* Cuando nos permite desarrollar un programa que necesitamos para tomar un conjunto de buenas prácticas para hacer eso. Esto se debe a que podemos ahorrar.
Unidad 1 Introduccion a los programas Concepto de Programa El término programa (del latín programma, que a su vez proviene de un vocablo griego) tiene.
FUNDAMENTOS DE PROGRAMACIÓN
David A Salamanca Díaz. DEFINICIÓN  Se define como una serie de pasos organizados que describen el proceso que se debe seguir, para dar solución a un.
Transcripción de la presentación:

Resolución de Problemas Introducción a la Programación

Motivación ax + bx+c=0 2

Pasos en la resolución de un problema Entender el problema Conceptualización Objetivo Contexto Buscar soluciones Elegir solución Diseñar solución Descomposición Especificar tareas Modelar solución Implementar solución Validar solución

¿Qué es un problema? Es una abstracción de la realidad para la cual nos interesa conocer una solución Solución: procedimiento que nos lleva a satisfacer ciertos requerimientos

Datos y Variables Datos: objetos simbólicos que representan objetos del mundo real. Ejemplos: 10 de Marzo de 2003, 3.14 Variables: no hace referencia a un objeto explícito Ejemplos: velocidad del móvil, factor de crecimiento

¿Qué es un Modelo? Estructura para dar razón y abstraer una realidad Ejemplo:

¿Qué es un algoritmo? Procedimiento detallado para resolver un problema en pasos y en un tiempo finito. Se especifican en base a operaciones básicas que controlan las variables y el flujo del algoritmo El algoritmo lleva desde un estado inicial a un estado final El algoritmo recibe Entradas y entrega Salidas

¿Cómo desarrollar un algoritmo? Imaginación No reinventar la rueda Dividir para conquistar Para ser efectivo se requiere practicar constantemente El diseño de algoritmos es una rama de la Ciencia de la Computación

¿Cómo se describe un algoritmo? Lenguaje natural Pseudo código Lenguaje de programación La precisión es importante Un algoritmo no puede ser descrito de forma ambigua: Todos tienen que entender lo mismo (incluido el computador!)

Pueden existir varios algoritmos para resolver el mismo problema Depende de quién lo invente Depende de qué se quiera optimizar Ej.: tiempo versus costo

¿Qué es una metodología? Se puede decir que una metodología es como un algoritmo genérico.

Problemas de los problemas

Solución a los problemas de los problemas Conceptualización Objetivo Elementos involucrados Problema

Problemas de las soluciones

Solución a los problemas de las soluciones Validación Especificación de limitaciones Solución

Una metodología para crear algoritmos Definición del problema (planteamiento original) Conceptualización (contexto) Objetivo (cualitativo y cuantitativo) Elementos involucrados Conceptualización de la solución Descomposición Tareas Variables Especificación del algoritmo Especificar la secuencia de actividades Dependiendo de la complejidad del algoritmo, descomponer en subalgoritmos Validación del algoritmo Dominios Ejecución Limitaciones del algoritmo Identificación de puntos débiles (condiciones críticas)

Simulando la preparación de un pie

Simulando la preparación de un pie Definición del problema Conceptualización: problema consiste en preparar un pie de alguna fruta, usando una cierta receta, y servirlo a una cierta cantidad de comensales. Entradas: cantidad de huevos, harina y mantequilla, fruta con que se cubrirá el pastel y cantidad correspondiente, tiempo que debe permanecer en el horno, y número de comensales. Objetivo: poder repartir un pie de fruta entre los comensales. Elementos involucrados: Elemento activo: cocinero que llevará a cabo el proceso. Elementos pasivos: ingredientes y cantidades (huevos, harina, mantequilla, fruta), tiempo de horneado, y número de comensales.

Simulando la preparación de un pie Conceptualización de la solución Descomposición: obtener la receta a emplear; preparar la base del pie, mezclando los distintos ingredientes; hornear la base durante un cierto tiempo; preparar la fruta; cortar el pie y servirlo a los comensales. Tareas: mezclar_base(huevos, harina, mantequilla) hornear_base(tiempo_horno) preparar_fruta(tipo_fruta, fruta) cortar_servir(comensales, tipo_fruta) Variables: tipo_fruta, huevos, harina, mantequilla, fruta, tiempo_horno, comensales

Simulando la preparación de un pie Especificación del algoritmo 1. Obtener la receta (huevos, harina, mantequilla, tipo_fruta, fruta y tiempo_horno) 2. Obtener la cantidad de comensales (comensales) 3. Mezclar_base(huevos, harina, mantequilla) 4. Hornear_base(tiempo_horno) 5. Preparar_fruta(tipo_fruta, fruta) 6. Cortar_servir(comensales, tipo_fruta)

Simulando la preparación de un pie Validación del algoritmo Dominios: Los posibles dominios que existen en el contexto de este problema se constituyen a partir de los distintos valores de entrada que pueden recibirse del usuario. Es decir, distintos tipos de fruta, distintas cantidades para cada ingrediente, distintos tiempos en el horno y distintas cantidades de comensales. Validación: Debe ejecutarse el algoritmo para los dominios definidos, es decir, cambiando valores para cada dato de entrada, y verificando que se puede alcanzar el objetivo buscado. Limitaciones del algoritmo

Cambio de neumático desinflado

Cambio de neumático desinflado Definición del problema Conceptualización: En una carretera, un auto se ha quedado parado, pues uno de sus 4 neumáticos se ha desinflado. El auto cuenta con herramientas para que el conductor pueda cambiarlo por uno de repuesto en buenas condiciones. Objetivo: Cualitativamente: cambiar neumático desinflado por el de repuesto. Cuantitativamente: el logro se mide verificando que los 4 están inflados. Elementos involucrados: elemento activo: conductor del auto. elementos pasivos: maletero; 4 ruedas, una de las cuales tiene el neumático desinflado; 4 pernos que sujetan cada rueda; neumático de repuesto, en buenas condiciones, ubicado en maletero del auto; gata hidráulica en el maletero del auto; llave de cruz en el maletero del auto

Cambio de neumático desinflado Conceptualización de la solución Descomposición: Retirar y colocar cosas Aflojar y apretar pernos Subir y bajar el auto con la gata Tareas: Retirar "algo" de un "lugar" Colocar "algo" en un "lugar" Aflojar "un determinado perno" Apretar "un determinado perno" Subir auto desde "una determinada posición" Bajar auto desde "una determinada posición"

Cambio de neumático desinflado Conceptualización de la solución Variables: N: rueda con neumático desinflado M: maletero G: gata hidráulica L: llave de cruz P: un perno (su número: 1, 2, 3, ó 4) D: neumático desinflado R: neumático de repuesto

Cambio de neumático desinflado Especificación del algoritmo 1. Retirar gata hidráulica G del maletero M 2. Retirar llave de cruz L del maletero M 3. Itere sobre cada perno P = 1,2,3,4 3.1. Aflojar con llave L, perno P en rueda N 4. Subir auto con gata hidráulica G en posición N 5. Itere sobre cada perno P = 1,2,3,4 5.1. Retirar perno P de rueda N 6. Retirar neumático D de rueda N 7. Retirar neumático R del maletero M 8. Colocar neumático R en rueda N 9. Colocar neumático D en maletero M 10. Itere sobre cada perno P = 1,2,3,4 10.1. Colocar perno P en rueda N 11. Bajar auto con gata hidráulica G en posición N 12. Itere sobre cada perno P = 1,2,3,4 12.1. Apretar con llave L, perno P en rueda N 13. Colocar llave de cruz L en maletero M 14. Colocar gata hidráulica G en maletero M

Cambio de neumático desinflado Validación del algoritmo Dominios: dependen del neumático que se haya desinflado. Validación: Ejecutar algoritmo para cualquiera de los cuatro neumáticos del auto. Limitaciones del algoritmo Auto debe tener 4 pernos sujetando cada rueda. Se dejaron de lado algunas consideraciones, como por ejemplo, abrir y cerrar el maletero, transportar los neumáticos y las herramientas.

Llamada telefónica Se desea conceptualizar el problema de efectuar una llamada telefónica en un teléfono público que recibe monedas de $10, $50 y $100. El costo mínimo de la llamada es de $100 por 5 minutos. El proceso se inicia desde que se levanta el auricular y finaliza cuando se cuelga.

Árboles de decisión Herramienta útil para describir algoritmos que involucran gran cantidad de decisiones

Diagramas de Flujo de Control