Lenguaje de Programación III. Introducción a los algoritmos Introducción a la Programación.

Slides:



Advertisements
Presentaciones similares
Introducción a la Programación “Conceptos de Algoritmo”
Advertisements

UNIVERSIDAD TECNOLÓGICA DE PANAMÁ
Clase 1.  Un programador es aquella persona que escribe, depura y mantiene el código fuente de un programa informático, es decir, del conjunto de instrucciones.
PROGRAMACIÓN I CENTRO DE ESTUDIOS INTEGRADOS EL MARISCAL - CEIM Ing. Luisa Fernanda Arenas Castañeda Feb 6 de 2016.
¿Qué es un Diagrama de Flujo? UN DIAGRAMA DE FLUJO, TAMBIÉN LLAMADO FLUJOGRAMA DE PROCESOS O DIAGRAMA DE PROCESOS, REPRESENTA LA SECUENCIA O LOS PASOS.
INFORMATICA II TEMA. ALGORITMOS MAESTRA PAULINA RUIZ SOSA.
Miss Rocío Morales Vásquez Saint Louis School Educación Matemática NB2.
Fundamentos de Programación de Computadores Módulo de Análisis y Diseño de Algoritmos.
 Para poder resolver una ecuación como ésta: x² = -4 No hay ningún número real que elevado al cuadrado nos pueda dar un resultado negativo. Ahora bien,
ALGORITMOS, DIAGRAMAS DE FLUJO ING. DIANA CRUZ. QUÉ ES UN ALGORITMO ALGORITMO PARA UNA RECETA DE COCINA ETAPAS PARA SOLUCIONAR UN PROBLEMA PROPIEDADES.
ITESCO – Arquitectura Computadoras L. S. C. A. Raúl Monforte Chulin - MORCH Systems 1.1. Arquitectura básica y sus operaciones. Objetivo: El estudiante.
Funciones en lenguaje C 2 Funciones Definición: – Las funciones son los bloques de construcción básicos de C. Dentro de ellas se da toda la actividad.
Introducción a la Programación Multimedial
Universidad autónoma del estado de México
Ingreso , proceso y salida de datos
DESIGUALDADES CON VALOR ABSOLUTO
Introducción a la Programación Multimedial
Diagrama de Flujo de Datos (DFD)
Actividad #2 Los algoritmos
Introducción a la Programación Multimedial
. Primera Open Class Asignatura: Programación Estructurada Tema:
Introducción al lenguaje C Instrucción IF – ELSE y el bucle WHILE
ROBERTO PINEDA FLORES. ALEXIS JULIAN VELAZQUEZ NAVA.
Olimpiadas Chilenas de Informática - Formación
Menú Presentación Dispositivos de Salida Que es informática
Olimpiadas Chilenas de Informática - Formación
Olimpiadas Chilenas de Informática - Formación
MULTIPLICACIÓN Esta operación matemática requiere comprender los conceptos que ayudan a resolver problemas entre los números Naturales. Repasa cada lámina.
UNIDAD I: TEORIA Y MODELOS DE SIMULACION
Conceptos básicos de programación
Fundamentos de programación
Estructuras de Datos Recursividad.
Introducción a los algoritmos
MATRICES.
Tema 6. Conceptos básicos de programación (Clase 2)
Taller de Planificación: Subsector de Matemática Segundo Año Básico
Tema 6. Conceptos básicos de programación Clase 1
Algoritmo Conjunto ordenado y finito de pasos que permite hallar la solución de un problema. Una secuencia de pasos que conducen a la realización de una.
Introducción a la Programación “Conceptos Básicos”
Tema 4 Elementos para el Desarrollo de Algoritmos
Unidad 1. Conceptos básicos
MENU SOFWARE Y HADWARE DISPOSITIVOS DE SALIDA DISPOSITIVOS DE ENTRADA
Fundamentos de programación
Programación en scratch
ALGORITMOS Un procedimiento o método para resolver un problema que cumpla con unos requisitos se dice que es un algoritmo. Se puede dar por tanto la siguiente.
6 Sesión Contenidos: Ecuaciones de 1er grado: Lineal. Fraccionaria.
Diseñar y elaborar algoritmos
Diagramas del modelo uml
Fundamentos de Programación
PROGRAMACIÓN 1 INTRODUCCIÓN
ALGORITMOS “Al finalizar esta fase debe ser capaz de plantear una solución a un problema a través de un programa ejecutado por un computador”
Herramientas Entorno Web
Sabes Que es un ALGORITMO
CONCEPTOS BÁSICOS DE COMPUTACIÓN E HISTORIA
.La Computadora. La computadora es una maquina capaz de realizar y controla a gran velocidad cálculos y procesos complicados que requieren una toma.
Tema 9. Estructuras de repetición. Clase 2
CURSO PROGRAMACIÓN BÁSICA SEMANA 2
Metodología de la Programación
Programación básica.
Introducción a los algoritmos
Fundamentos de Informática Especialidad de Electrónica –
Teoría Nº 3 Conceptos Básicos de Algoritmia Estructuras de Control
Introducción a la Estadística Informática
LOS NÚMEROS IMAGINARIOS
Diseño de algoritmos.
Programa de Aplicación
Operaciones combinadas
Tema 6. Conceptos básicos de programación (Clase 2)
UNIDAD 2 MODELO DE DATOS.
Tema 8. Estructuras de decisión. Clases 1 y 2.
Transcripción de la presentación:

Lenguaje de Programación III

Introducción a los algoritmos Introducción a la Programación

Motivación 3 OBJETIVO GENERAL DE LA ASIGNATURA Resolver problemas básicos a través de la construcción de programas basados en algoritmos y un lenguaje de programación, generando acciones hacia la búsqueda de propuestas pertinentes. APRENDIZAJES ESPERADOS (COMPETENCIAS) Descompone un problema en sub-problemas para darle una solución más sencilla. Interpreta algoritmos y programas para la solución de problemas básicos de programación relativos a la matemática. Construye algoritmos y programas para la solución de problemas básicos de programación relativos a la matemática. Trabaja colaborativamente, cumpliendo un rol y responsabilizándose de él. Comprende el entorno de las situaciones problemáticas que tienen un componente informático.

Programa de Aplicación Programa que permite resolver la ecuación de primer grado 4 a x + b = 0 ? abab x = -b / a #include int a,b,x; main() { printf(“Ingrese valores de EC”); scanf(“%d %d”,&a,&b); if a ==0 printf (“error”); else { x = -b / a; printf(“La solución es %d:”,x); } printf(“Fin programa”); } Algoritmo EC 1er Grado Variables a,b,x de tipo entero Inicio Escribir(“Ingrese valores de EC”) Leer (a,b) Si a = 0 entonces escribir (“Error”) sino Inicio x=-b/a Escribir (“La solución es:”,x) Fin Escribir(“Fin programa”) Fin

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 5

¿Qué es un problema? Es una situación concreta sobre la cual se quiere implementar una solución (ejemplos) Solución: procedimiento que nos lleva a satisfacer ciertos requerimientos Esquema básico para la resolución de un problema a través de un programa con un enfoque sistémico 6 Proceso Entrada Salida Datos Externos Datos auto generados Lectura de dispositivo de almacenamiento Informes Datos para otro programa Datos grabados en dispositivos externos de almacenamiento

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 7

¿Qué es un Modelo? Estructura para dar razón y abstraer una realidad Ejemplo: 8 Asignaturas Carrera Estudiantes Estudia Plan de Estudios Inscrita

¿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 9

¿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 10

¿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!) 11

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. 12

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

Conceptos Básicos de Algoritmos La forma en que se ejecutan las operaciones básicas en un computador, es similar a lo que ocurre en nuestro cerebro. Por ejemplo, para sumar dos valores: – Primero debemos pedirle a alguien que nos diga el primer valor. – Luego de que conocemos este valor, debemos almacenarlo (para recordarlo después) en una neurona (Suponemos que un valor se puede almacenar en una neurona). Ya conocemos el primer valor y está almacenado en nuestro cerebro.

Conceptos Básicos de Algoritmos Ahora debemos pedir el segundo valor. Una vez conocido, lo almacenamos en otra neurona distinta de la anterior. ¿ Por qué? Ahora que conocemos los dos valores procedemos a sumarlos, y dicho resultado lo almacenamos en otra neurona distinta de las anteriores. Por último, le decimos el resultado a la persona que nos entrego los números.

Conceptos Básicos de Algoritmos – De lo anterior, al menos necesitamos 3 neuronas para sumar dos números. – Le pedimos explícitamente que nos dijeran dichos valores. – Le asignamos dichos valores a las neuronas – La suma la realizó nuestro cerebro de forma mecánica. Note que no existen detalles de la operaciones básicas (*,/,+, -). – Finalmente se da el resultado

Conceptos Básicos de Algoritmos Algoritmo para sumar dos números: – Definimos tres neuronas – Pedimos el primer valor – Almacenamos ese valor en la neurona 1. – Pedimos el segundo valor – Almacenamos ese valor en la neurona 2. – Almacenamos la suma de las neuronas 1 y 2 en la neurona 3 – Entregamos el resultado que se encuentra en la neurona 3.

Conceptos Básicos de Algoritmos Sin embargo, en los lenguajes no se pueden usar neuronas, pero podemos definir variables (Recuerde que las variables pueden tomar cualquier valor) En lugar de usar neurona 1 y neurona 2, se utilizan espacios de memoria que llamaremos “var 1” y “var 2”, y así sucesivamente. También las podemos llamar “x1” y “x2” ó “x” e “y” ….

Conceptos Básicos de Algoritmos Ejercicio: Cree un algoritmo que multiplique tres números. Algoritmo para multiplicar tres números: – Definimos cuatro variables – Pedimos el primer valor – Almacenamos ese valor en var 1. – Pedimos el segundo valor – Almacenamos ese valor en var 2. – Pedimos el tercer valor – Almacenamos ese valor en var 3. – Almacenamos la multiplicación de las variables en var 4 – Entregamos el resultado que se encuentra en var 4.

Conceptos Básicos de Algoritmos La manera en que hemos detallado nuestros dos algoritmos se llama PSEUDO-CÓDIGO. Y este pseudo-código fue escrito en lenguaje natural. Otra manera de poder detallar nuestros algoritmos es a través de los diagrama de flujo. Un diagrama de flujo es una representación simbólica de la lógica del algoritmo.

Diagrama de Fujo Nomenclatura: – Inicio del algoritmo – Término del algoritmo – Impresión de mensajes – Receptor de datos – Operación de datos – Bifurcación (Decisión) – Definición de variables – Conector Inicio Termino ? FV

Diagrama de Flujo y Pseudo-Código Inicio Escribir “Mensaje 1” Fin Leer var1,x, y a = 3 * x + y b = a / var1 Entero var1, x, y Real a, b Si a > b VF Inicio de Algoritmo Definición de variables Impresión de mensajes Lectura de mensajes Transformación de datos Operaciones sobre los datos Bifurcación en la ejecución de instrucciones Conector Fin de algoritmo DIAGRAMA DE FLUJONOMENCLATURA PSEUDO-CÓDIGO Inicio Variables Entero var1, x, y Real a, b Escribir (“Mensaje 1”) Leer (var1, x, y) a = 3 * x + y b = a / var1 Si a > b Entonces Inicio Instrucciones Fin Sino Inicio Instrucciones Fin

Diagrama de Fujo para el algoritmo que suma dos valores Inicio Termino var1,var,var3 Ingrese el primer valor var 1 Ingrese el segundo valor var 2 var3=var1+var2 El resultado es : var3 Se pide ingresar el segundo valor Se pide ingresar el primer valor Se asocia el número ingresado a var1 Se definen las variables var1, var2, var3 Se asocia el número ingresado a var1 Se asigna el resultado de la suma entre var1 y var2 a var3 Se muestra el resultado

Ejercicio Cree un algoritmos donde una persona ingrese su edad y muestre por pantalla si es mayor de edad. Diagrama de Flujo Pseudo - Código C, C++