Algoritmos. Fundamentos de Programación

Documentos relacionados
Algoritmos y solución de problemas. Fundamentos de Programación Otoño 2008 Mtro. Luis Eduardo Pérez Bernal

Rúbrica: Solución de Problemas. Unidad 2 Pronósticos de la Demanda. TECNOLÓGICO NACIONAL DE MÉXICO Instituto Tecnológico de Pachuca

Tema 2 Introducción a la Programación en C.

Métodos para escribir algoritmos: Diagramas de Flujo y pseudocódigo

Algoritmos. Medios de expresión de un algoritmo. Diagrama de flujo

CAPITULO ALGORITMOS Y PROGRAMAS CONTENIDO

Introducción a la programación

Conceptos fundamentales de Algoritmos

Metodología para la solución de problemas programables

Formato para prácticas de laboratorio

Algoritmos y Programas

16 - Programando robots

TECNICO SUPERIOR EN INFORMÁTICA EMPRESARIAL MÓDULO INTRUCCIONAL

Diseño Estructurado de Algoritmos

PROGRAMACIÓN. UNIDAD II. ALGORITMO PROFA : HAU MOY

Nombre de la asignatura: Algoritmos y Lenguajes de programación.

Guía práctica de estudio 05: Diagramas de flujo

La resolución de un problema

PROGRAMACIÓN DE LOS CONTENIDOS DE MATEMÁTICAS EN LA PREPARACIÓN DE LA PARTE COMÚN DE LA PRUEBA DE ACCESO A LOS C.F.G.S. (Opción C)

A l g o r i t m o s. Seguridad en Internet ALGORITMOS.

Capítulo 16. Diagrama de Clases UML

ESTRUCTURAS ALGORITMICAS

CAPÍTULO 3. Metodología para la elaboración de. manuales de procedimientos

Profesor(a): M. A. Zeferino Galarza Hernández

Nombre de la asignatura: Programación Básica. Créditos: Objetivo de aprendizaje

Ángulos complementarios Un par de ángulos son complementarios si la suma resultante de sus medidas es.

ÁREA: MATEMÁTICAS UNIDAD : 1 TEMPORALIZACIÓN: OCTUBRE 1ª QUINCENA OBJETIVOS CONTENIDOS CRITERIOS DE EVALUACIÓN

PROBLEMA 1. Considere el siguiente problema de programación lineal:

[ GUÍA DIDÁCTICA: DESARROLLO DE ALGORITMOS PSEINT] 11 de julio de 2013

UNIDAD DIDACTICA. Esta unidad es el punto de partida para la correcta asimilación de las posteriores unidades didácticas del módulo.

TÉCNICO SUPERIOR UNIVERSITARIO EN TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN ÁREA SISTEMAS INFORMÁTICOS.

Normas Estatales Fundamentales Comunes

DESCRIPCIÓN ESPECÍFICA NÚCLEO: Núcleo Sector Comercio y Servicios.

2. Codificar de forma sistemática la secuencia de instrucciones en un lenguaje.

a) Factoriza el monomio común. En este caso 6 se puede dividir de cada término:

Estructuras Secuénciales

: Algorítmica y Estructura de Datos I

UNIDAD 1: NÚMEROS RACIONALES OBJETIVOS

DIAGRAMAS DE FLUJOS. Qué son Los Diagramas de Flujo y Para qué se Usan?

Tema 2 Conceptos básicos de programación. Fundamentos de Informática

Nombre y apellidos Nº EXAMEN TEMA 3. ECUACIONES, INECUACIONES Y SISTEMAS 4º E.S.O.

Algoritmos, pseudocódigo y diagramas de flujo: una introducción (CU00123A)

Estándares de evaluación en la materia de MATEMÁTICAS de 1º de ESO. Curso 2016/2017.

Construimos las casas de los animales

Estructura Selectiva Múltiple

DES: Programa(s) Educativo(s): Tipo de materia: Clave de la materia: Semestre: Área en plan de estudios:

1. Computadores y programación

CONTENIDOS MÍNIMOS BLOQUE 2. NÚMEROS

UNIDAD 7. SISTEMA MÉTRICO DECIMAL

Materia: Matemática de 5to Tema: Método de Cramer. Marco Teórico

Algebra lineal y conjuntos convexos


TALLER CAPACITACIÓN : USO DE LA GUÍA PARA EL ANÁLISIS DE CAUSAS EN LA TOMA DE ACCIONES CORRECTIVAS Y PREVENTIVAS. Ing. Emperatriz Zapata Zapata

1. Polinomios. 2. Ecuaciones de segundo grado. 3. Soluciones de una ecuación de segundo. grado. Problemas. 4. Sistemas de ecuaciones

Curso º ESO. UNIDADES 6 Y 7: EXPRESIONES ALGEBRAICAS Y ECUACIONES Departamento de Matemáticas IES Fray Bartolomé de las Casas de Morón

T7. PROGRAMACIÓN LINEAL

Introducción a la Programación

Diagramas de secuencia

Contenidos mínimos 1º ES0. 1. Contenidos. Bloque I: Aritmética y álgebra.

Materia: Matemáticas de 4to año. Tema: Logaritmos naturales y base 10. Marco Teórico

4º E.S.O. Matemáticas A

Promovemos el derecho a la salud en la campaña Reciclando ando

ALGORITMOS, ESTRUCTURAS Y PROGRAMACION

COLEGIO HELVETIA PROGRAMA DE MATEMÁTICAS GRADO ONCE

Unidad 2. Los números enteros.

UNIDAD 12.- Estadística. Tablas y gráficos (tema12 del libro)

GUIA 2: Repaso sobre uso de C#. Funciones, métodos y arreglos.

UNIVERSIDAD DE GUADALAJARA

Diagramas de secuencia

Índice Proposiciones y Conectores Lógicos Tablas de Verdad Lógica de Predicados Inducción

UNIDAD I. ALGORITMOS

MÉTODO SINGAPUR. Para la enseñanza de Matemáticas

Fundamentos de Programación Visual Basic

Guía para la realización de diagrama causa-efecto de accidente de trabajo aplicando estudio de causalidad

UNIDAD ACADÉMICA PROFESIONAL TIANGUISTENCO

Conectados con el pasado, proyectados hacia el futuro Plan Anual de Matemática II Año PAI VII Grado

Estándares de Contenido y Desempeño, Estándares de Ejecución y Niveles de Logro Marcado* MATEMÁTICA

Fundamentos de programación y Bases de Datos

CONTENIDOS Y CRITERIOS DE EVALUACIÓN MATEMÁTICAS 6º ED.

13. Utilizar la fórmula del término general y de la suma de n términos consecutivos

Materia: Matemática de Octavo Tema: Raíces de un polinomio. Marco teórico

Proyecto de Innovación y Mejora de la Calidad Docente nº 21 Departamento de Didáctica de las Matemáticas, Facultad de Educación,

Consideremos dos situaciones que se muestran en los cuadros a continuación:

LABORATORIO TIC 2 Primer Parcial Etapas 1 y 2.

PSEUDOCÓDIGO. En este documento se recopilan los elementos conceptuales esenciales acerca PSEUDOCÓDIGO en la programación.

C a l ses P P y y NP C a l se P C a l se N P N P [No N n o -De D te t rmin i i n s i ti t c i Polynomial-tim i e]

A continuación se presenta la información de la altura promedio para el año de 1998 en Holanda de hombres y mujeres jóvenes.

Funciones: Aspectos básicos

UNIDAD 6: ECUACIONES OBJETIVOS

Carrera: Ingeniería en Tecnologías de la Información y Comunicaciones

TÉCNICO SUPERIOR UNIVERSITARIO EN MECATRÓNICA ÁREA AUTOMATIZACIÓN EN COMPETENCIAS PROFESIONALES ASIGNATURA DE LENGUAJE DE PROGRAMACIÓN

Capítulo 1. Algoritmos, diagramas de flujo y programas.

Oliverio J. Santana Jaria. Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso Los objetivos de este tema son:

2. Ecuaciones de primer grado: (sencillas, con paréntesis, con denominadores).

5º Básico. Objetivos de Aprendizaje a Evaluar:

12 Funciones de proporcionalidad

Algoritmo para Calcular Logaritmos

Lección 12: Sistemas de ecuaciones lineales

EL LENGUAJE ALGEBRAICO

Transcripción:

Algoritmos Fundamentos de Programación

Comunicarnos con el computador No es una tarea fácil. Instrucciones Debemos aprender a realizar las instrucciones de forma correcta para que el computador lo entienda

Agenda Algoritmos Resolución de problemas: Metodología Fases de un programa Expresiones formales de un algoritmo: Lenguaje natural, Diagramas de Flujo y Pseudocódigo.

Problemas que nos enfrentamos diariamente Tomar el bus para ir a la Universidad Comer Jugar al fútbol Poner un foco Subir y bajar escaleras

Actividad grupal EL PROBLEMA DEL TANGRAM

Forme grupos para resolver el siguiente problema: Uniendo TODAS las piezas de la derecha formen un cuadrado Tangram

Una posible solución Tangram

Tangram Describa una secuencia de pasos para resolver el problema planteado. Reglas: No puede numerar las piezas No utilice verbos que contengan la letra A

Tangram Intercambie su hoja con la de otro grupo. Utilice la hoja del otro grupo, siga al pie de la letra las indicaciones para resolver el problema del Tangram.

Tangram Responda estas preguntas De qué se trataba el problema? Cómo lo resolvió? Le resultó sencillo encontrar la solución? Qué conocimientos necesitó para poder expresar la solución (dominio)? Le resultó sencillo expresar la solución? No es lo mismo encontrar la solución a un problema, que expresar la secuencia de pasos para resolverlo

Cómoresolvemos un problema? Entender el Problema ENTENDER EL PROBLEMA Entiendes todo lo que dice? Puedes replantear el problema en tus propias Mirar palabras? Configurar hacia Distingues cuáles son los datos? un plan atrás Sabes a qué quieres llegar? Hay suficiente información? Hay información extraña? Es este problema similar a algún otro que Ejecutar un plan hayas resuelto antes?

Cómoresolvemos un problema? Entender el Problema CONFIGURAR UN PLAN Ensayo y Error (Conjeturar y probar la Mirar conjetura). Configurar hacia Usar una variable. un plan atrás Buscar un Patrón. Hacer una lista. Resolver un problema similar más simple. Hacer una figura. Hacer un diagrama. Ejecutar un plan

Cómoresolvemos un problema? Mirar hacia atrás Entender el Problema EJECUTAR EL PLAN Ejecutar un plan Configurar un plan Implementar las estrategias que escogiste para solucionar el problema. Puede ser que te des cuenta que debes tomar un nuevo curso o volver a empezar.

Cómoresolvemos un problema? Entender el Problema MIRAR HACIA ATRÁS Mirar Es tu solución correcta? Tu Configurar hacia respuesta satisface lo establecido en el un plan atrás problema? Adviertes una solución más sencilla? Puedes ver cómo extender tu solución a un caso general? Ejecutar un plan

RESOLVER UN PROBLEMA USANDO EL COMPUTADOR

Metodología para la resolución de un problema usando un computador El proceso de resolver un problema es complejo y se han desarrollado metodologías formales. De las metodologías podemos distinguir cuatro pasos básicos: Análisis del problema (Entender el Problema) Diseño de la solución (Configurar un plan) Implementación de la solución (escribir la solución en un lenguaje de programación para que el computador resuelva el problema o ejecute el plan trazado) Revisión (Mirar hacia atrás)

Metodología para la resolución de un problema usando un computador La solución es correcta? Hay una manera más sencilla de obtenerla? REVISIÓN ANÁLISIS DEL PROBLEMA DISEÑO DE LA SOLUCIÓN IMPLEMENTACIÓN Qué debe hacer el programa Definir y entender el problema Conocer las variables de entrada, los procesos y las salidas Identificar las áreas de conocimiento Cómo va a resolver el problema el programa Divide y vencerás Algoritmo que lo resuelve Técnicas de representación de la solución Implementar la solución en un lenguaje formal que el computador entienda

El problema de la tienda de libros en la frontera americano-canadiense Considere el siguiente problema: Un cliente americano compra un libro en una tienda localizada en la frontera con Canadá en 41.27 dólares canadienses. El cliente le da al dependiente 40 dólares americanos, conociendo que el dólar americano tiene un cambio mayor que el canadiense. La política de la tienda es retornar el cambio del mismo con el mismo tipo de moneda con la cual pago el cliente. Suponga que un dólar canadiense cuesta 0.72 dólares americanos. Qué pasos debe realizar el dependiente para dar el cambio correcto?

ANÁLISIS DEL PROBLEMA

Análisis del problema Se deben responder las siguientes preguntas: Qué debe hacer el programa? Cuáles son las entradas? Cuáles son las salidas?

DISEÑO DE LA SOLUCIÓN

Diseño usando el computador Resolver el problema usando el computador Diseñar el plan que permita resolver el problema

Diseño usando el computador $40 americanos 0.72 = $55.55 canadienses $55.55 - $41.27 = $14.28 canadienses $14.28 canadienses x 0.72 = $ 10.28 americanos La solución se debe expresar formalmente a través de un Algoritmo.

Algoritmo Un algoritmo es una lista bien definida, ordenada y finita de operaciones que permite llegaralasolucióndeunproblema. Dado un estado inicial y una entrada, a través de pasos sucesivos y bien definidos se llega a un estado final, obteniendo una solución.

Algoritmo (una receta de cocina) Podemos considerarlo como una receta de cocina, donde los ingredientes son la entradas al algoritmo. La receta nos indica una serie de pasos finitos que se deben realizar para obtener el resultado, que en este caso es el plato final preparado. Puede existir más de una solución al mismo problema (varias maneras de cocinar el mismo plato), sin embargo el resultado final es el mismo, con sus pequeñas variantes propias de la forma de resolverlo (el mismo plato puede tener mejor sabor si se lo prepara de una forma que de otra).

Algoritmo (una receta de cocina) El encargado de escribir el algoritmo para resolver el problema es el programador (chef). No siempre el programador será quien implemente la solución al problema (cocinero). El algoritmo debe estar bien escrito para que cualquier persona (cocinero novato) pueda implementar dicha solución y obtener el mismo resultado.

Formalizar el proceso Hay que decirle exactamente al computador que hacer. Dividir la solución en pasos formales que el computador pueda seguir hasta llegar a la solución. El programador no solo debe resolver el problema, debe tener la habilidad de decirle al computador cómo resolverlo paso a paso.

Formalizar el proceso Se pueden usar estructuras formales que permitan representar la solución. La formalización nos ayuda a escribir una algoritmo que pueda ser analizado e interpretado por otras personas a través de la formalización de la solución.

Características de los algoritmos (Bien escrito?) Claro Algoritmo Efectivo Finito

Formas de representación de un algoritmo Lenguaje natural Lenguaje hablado por las personas Puede no ser muy claro Suele ser ambiguo Diagrama de flujo Representación gráfica de la solución Pseudo-código Utilizan estructuras formales Parecido a un lenguaje de programación

Lenguaje formal Serie de pasos en forma de secuencia. Utilizar palabras del lenguaje natural de comunicación de las personas. ALGORITMO EN LENGUAJE FORMAL PARA IR AL TRABAJO: 1. GIRA A LA DERECHA 2. AL DOBLAR LA ESQUINA SIGUE RECTO 3. ES EL EDIFICIO DE TRES PISOS DE PUERTA CAFE

El problema de la tienda de libros en la frontera americano-canadiense (Lenguaje formal) 1. Inicio. 2. Ver el MONTO_DE_DINERO_RECIBIDO en dólares americanos. 3. Calcular el equivalente en dólares canadienses usando la ecuación: MONTO_DE_DINERO_RECIBIDO 0.72 = MONTO_CANADIENSE 4. Ver el PRECIO_DEL_LIBRO 5. Calcular el cambio usando la ecuación: CAMBIO = MONTO_CANADIENSE - PRECIO_DEL_LIBRO 6. Calcular el equivalente en dólares usando la ecuación: CAMBIO _DOLARES = CAMBIO X 0.72 7. Dar el CAMBIO_DOLARES al cliente. 8. Fin.

Diagramas de flujo Grafos utilizados para representar un algoritmo. Los grafos utilizados son los siguientes: Procesos Operaciones de lectura y escritura Inicio y fin Decisiones Flujo del programa.

El problema de la tienda de libros en la frontera americano-canadiense (Diagrama de flujo) Cómo sería si utilizáramos un diagrama de flujo?

Pseudocódigo Utilizado por programadores para describir algoritmos en un lenguaje humano simplificado parecido a un lenguaje de programación. AVANZA 100 GIRA 180 AVANZA 90 Manual de Pseudocódigo: http://es.wikipedia.org/wiki/pseudoc%c3%b3digo

IMPLEMENTACIÓN

Implementación Implementar la solución al problema usando un lenguaje de programación: LOGO, C, entre otros. Se usan estructuras formales en un lenguaje que el computador entiende. Se obtiene un programa

REVISIÓN

Revisión Se prueba el programa y se verifica si la solución que provee es la correcta. En este momento es donde probamos otras entradas para analizar el comportamiento del programa.

Conclusiones Resolver un problema no es una tarea sencilla, y expresar su solución formalmente puede resultar muy complejo Algunas veces para poder resolver un problema debemos tener conocimiento relacionado a la temática del problema Existe más de una forma de expresar una solución a un problema