Resolución de Problemas

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Resolución de Problemas"

Transcripción

1 Resolución de Problemas con algoritmos Colaboratorio de Computación Avanzada (CNCA) / 27

2 Contenidos 1 Introducción 2 Elementos de algoritmos Elementos Variables Estructuras de Control Condicionales Ciclos Estructuras de Datos 3 Funciones y Recursividad Funciones Recursividad 4 Síntesis 2 / 27

3 Introducción 3 / 27

4 Definición Un algoritmo es un conjunto: Ordenado Finito cuyos elementos (instrucciones) son: Finitos Bien especificados (no ambiguos) implementado por un agente que no requiere de ingenio. 4 / 27

5 Representación de algoritmos Los algoritmos se pueden escribir de diversas formas: En lenguaje natural, con expresiones comunes. 1 Sean dos números enteros. 2 Sumarlos. 3 Escribir el resultado al final de la página. En lenguaje formal, con símbolos matemáticos. 1 Sean a, b Z 2 c = a + b 3 El resultado es c Por qué es preferible utilizar símbolos matemáticos? 5 / 27

6 Representación de algoritmos Los algoritmos se pueden escribir de diversas formas: En lenguaje natural, con expresiones comunes. 1 Sean dos números enteros. 2 Sumarlos. 3 Escribir el resultado al final de la página. En lenguaje formal, con símbolos matemáticos. 1 Sean a, b Z 2 c = a + b 3 El resultado es c Por qué es preferible utilizar símbolos matemáticos? 5 / 27

7 Elementos de algoritmos 6 / 27

8 Elementos de un algoritmo Instrucciones: indican qué hacer en un momento dado. Mostrar valor en pantalla, Guardar archivo, etc. Variables: contenedores, su valor puede cambiar con el tiempo. a = 1, b = 2,5. Operadores: transforman o modifican expresiones. Asignación: = Aritméticos: +, -, /, *, % Comparación: >, <, >=, <=, ==,!= Lógicos:, &&,! (equivalentes a,, respectivamente). 7 / 27

9 Elementos de un algoritmo (2) Estructuras de control: alteran la secuencia de las instrucciones. Estructuras de datos: organizan y relacionan conjuntos de variables. 8 / 27

10 Variables Representan valores de diversos tipos. Poseen: Nombre. Valor. Dirección, tipo y tamaño. Ejemplo: nombre = Bruce profesión = Batman edad = 33 x = g y = 3, En programación, las variables debe ser declaradas e inicializadas. 9 / 27

11 Estructuras de control Los programas son por lo general secuenciales. El flujo de instrucciones se puede modificar mediante estructuras de control: De selección o condicionales. De repetición (ciclos). 10 / 27

12 Condicionales Estructuras de control que realizan una secuencia de instrucciones sólo si se cumple una condición. Por ejemplo: Un juego de escudo y corona se rige por la regla: Si sale lo que escogí, entonces gano; sino, entonces pierdo. Programa para escudo y corona 11 / 27

13 Ciclos Estas estructuras de control repiten instrucciones muchas veces en forma impĺıcita. Utilizan un valor para contar la cantidad de repeticiones. Plantean repeticiones en forma iterativa. Por ejemplo, una estructura matemática iterativa es la sumatoria: 10 i=1 i = Cómo se le dice a una computadora que muestre todos los números entre 1 y 10? 12 / 27

14 Ejemplo sin estructuras de control Algorithm 1 Imprimir en pantalla los números del 1 al 10 1: function Imprimir 2: imprimir 1 3: imprimir 2 4: imprimir 3 5: imprimir 4 6: imprimir 5 7: imprimir 6 8: imprimir 7 9: imprimir 8 10: imprimir 9 11: imprimir 10 12: end function 13 / 27

15 Mientras La estructura de control mientras (while) repite un conjunto de instrucciones la cantidad de veces indicada. Estructura de control mientras 14 / 27

16 Ejemplo con estructuras de control Algorithm 2 Imprimir en pantalla los números del 1 al 10 1: function Imprimir 2: x = 1 3: while x <= 10 do 4: imprimir x 5: x = x + 1 (*) 6: end while 7: end function (*) Conceptos importantes: acumuladores y cambio de valor. 15 / 27

17 Estructuras de Datos Las estructuras de datos organizan y facilitan la lectura, manipulación y relación de valores. Algunos tipos básicos: Arreglos y matrices. Listas. Grafos y árboles. Estructura de datos 16 / 27

18 Control de instrucciones La repetición expĺıcita mediante Para y Mientras se conoce como iteración. La repetición impĺıcita se observa en estructuras y procesos. Es conocida como recursión o recursividad. 17 / 27

19 Funciones y Recursividad 18 / 27

20 Funciones Las funciones: Son módulos que contienen instrucciones que resuelven tareas específicas. Ayudan a modularizar el problema. Permiten construir soluciones complejas mediante elementos sencillos. Reciben algún tipo de entrada, la transforman o manipulan y retornan el resultado. Pueden ser utilizadas dentro de otras funciones. Pueden combinarse con otras funciones. Principio de composición funcional: f(g(x)). 19 / 27

21 Ejemplo de función Objetivo: Encontrar la posición de un número en una lista. Sean L una lista de números, y n el elemento buscado. Algorithm 3 Búsqueda en una lista 1: function Buscar(L, n) 2: m = Primer elemento de L 3: while queden elementos en L do 4: if m == n then 5: Retornar m 6: else 7: m = siguiente elemento de L 8: end if 9: end while 10: end function 20 / 27

22 Ejemplo de función con estructuras discretas Ejemplo con nomenclatura de conjuntos: Sean L un conjunto ordenado, l Z el número buscado, L la cantidad de elementos de L y L i el elemento en la posición i. Algorithm 4 Búsqueda en una lista 1: function Buscar(L, l) 2: i = 1 3: while i < L do 4: if L m == l then 5: Retornar L m 6: end if 7: i = i + 1 8: end while 9: end function 21 / 27

23 Recursividad La recursividad se refiere la repetición de: Formas en una estructura. Instrucciones en una función. y en ambos casos describe estructuras/funciones autocontenidas. Triángulo de Sierpinski 22 / 27

24 Caracterización de recursividad El comportamiento recursivo se caracteriza por: Un conjunto de casos base. Un conjunto de reglas que permiten alcanzar uno de los casos base. Por ejemplo, el conjunto de números naturales: 1 0 N. 2 Si n N, n + 1 N 23 / 27

25 Ejemplo de algoritmo recursivo Algorithm 5 Calcular serie de Fibonacci 1: function fibonacci(n) 2: if n == 0 n == 1 then 3: retornar n 4: else 5: retornar fibonacci(n 1) + fibonacci(n 2) 6: end if 7: end function 24 / 27

26 Síntesis 25 / 27

27 Síntesis Los algoritmos representan soluciones en lenguaje formal. Las variables representan valores. Los operadores modifican valores. Las estructuras de control alteran el flujo de instrucciones. 26 / 27

28 Lecturas recomendadas Michael Sipser. Introduction to the Theory of Computation. 2da Edición, Course Technology, ISBN: Gilles Brassard y Paul Bratley. Fundamentals of Algorithmics. Prentice Hall, ISBN: / 27

Tecnologías en la Educación Matemática. Expresiones. Datos. Expresiones Aritméticas. Expresiones Aritméticas 19/08/2014

Tecnologías en la Educación Matemática. Expresiones. Datos. Expresiones Aritméticas. Expresiones Aritméticas 19/08/2014 Tecnologías en la Educación Matemática jac@cs.uns.edu.ar Dpto. de Ciencias e Ingeniería de la Computación UNIVERSIDAD NACIONAL DEL SUR 1 Datos Los algoritmos combinan datos con acciones. Los datos de entrada

Más detalles

Ejemplos de conversión de reales a enteros

Ejemplos de conversión de reales a enteros Ejemplos de conversión de reales a enteros Con el siguiente programa se pueden apreciar las diferencias entre las cuatro funciones para convertir de reales a enteros: program convertir_real_a_entero print

Más detalles

Estructuras de Control - Diagrama de Flujo

Estructuras de Control - Diagrama de Flujo RESOLUCIÓN DE PROBLEMAS Y ALGORITMOS Ingeniería en Computación Ingeniería en Informática UNIVERSIDAD NACIONAL DE SAN LUIS DEPARTAMENTO DE INFORMÁTICA AÑO 2015 Índice 1. Programación estructurada 2 1.1.

Más detalles

EL PROCESO DE DISEÑO DEL SOFTWARE

EL PROCESO DE DISEÑO DEL SOFTWARE UNIDAD VI EL PROCESO DE DISEÑO DEL SOFWARE Contenido: 6.1 El diseño en la Ingeniería de Software 6.2 El proceso de Diseño 6.3 Fundamentos de Diseño 6.4 Diseño de Datos 6.5 Diseño Arquitectónico 6.6 Diseño

Más detalles

RELACIONES DE RECURRENCIA

RELACIONES DE RECURRENCIA Unidad 3 RELACIONES DE RECURRENCIA 60 Capítulo 5 RECURSIÓN Objetivo general Conocer en forma introductoria los conceptos propios de la recurrencia en relación con matemática discreta. Objetivos específicos

Más detalles

Fundamentos de la Programación

Fundamentos de la Programación Fundamentos de la Programación El Software Las operaciones que debe realizar el hardware son especificadas con una lista de instrucciones, llamadas programas o software. Dos grandes grupos de software

Más detalles

Estructuras de repetición hacer-mientras y repita hasta

Estructuras de repetición hacer-mientras y repita hasta Estructuras de repetición hacer-mientras y repita hasta Programación 1 Cátedra de Programación Departamento de Computación Escuela de Ingeniería de Sistemas Hacer mientras Diagrama de flujo Acciones S1

Más detalles

Ejemplo de la implementación del llenado de un arreglo de forma aleatoria

Ejemplo de la implementación del llenado de un arreglo de forma aleatoria OBJETIVO 6.3. MANEJO DE ARREGLOS LLENADO DE UN VECTOR Un arreglo se puede llenar de dos formas una de manera aleatoria en donde el compilador llena el arreglo y otra forma es darle la oportunidad al usuario

Más detalles

CI 2125, Computación I

CI 2125, Computación I Universidad Simón Bolívar Dpto. de Computación y Tecnología de la Información CI 2125, Computación I Práctica 5: ESTRUCTURAS DE REPETICIÓN Como ya hemos visto, el procedimiento desarrollado para resolver

Más detalles

Introducción a la Computación TFA

Introducción a la Computación TFA Introducción a la Computación TFA Departamento de Informática Facultad de Ciencias Físico, Matemáticas y Naturales- UNSL Lenguaje de Diseño de Algoritmos Estructura de Control Condicional Simple y Múltiple

Más detalles

Diseño de algoritmos

Diseño de algoritmos Diseño de algoritmos Jose Jesus García Rueda. Adaptado de El algoritmo, una iniciación a la programación (http://www.desarrolloweb.com/manuales/67/ http://www.desarrolloweb.com/manuales/67/) ) y de Diseño

Más detalles

ESTRUCTURA DE DATOS: ARREGLOS

ESTRUCTURA DE DATOS: ARREGLOS ESTRUCTURA DE DATOS: ARREGLOS 1. Introduccion 2. Arreglos - Concepto - Caracteristicas 3. Arreglos Unidimensionales 4. Arreglos Bidimensionales 5. Ventajas del uso de arreglos 6. Ejemplo 1. Introducción

Más detalles

IIC1102 - Introducción a la Programación -

IIC1102 - Introducción a la Programación - IIC1102 - Introducción a la Programación - Sección 4 Introducción Programa y Carla Vairetti cvairetti@gmail.com Pontifícia Universidad Católica 5 de Marzo de 2009 Esquema 1 Programa del curso 2 3 Esquema

Más detalles

Que es PHP? Que se puede hacer con PHP? Sintaxis del lenguaje. Variables. Operadores básicos. Condicionales. Ciclos.

Que es PHP? Que se puede hacer con PHP? Sintaxis del lenguaje. Variables. Operadores básicos. Condicionales. Ciclos. Que es PHP? Que se puede hacer con PHP? Sintaxis del lenguaje. Variables. Operadores básicos. Condicionales. Ciclos. Qué es PHP? PHP (Hypertext Preprocessor). Es un lenguaje de programación: De código

Más detalles

Introducción. Visual Basic para Aplicaciones (VBA) en Excel: aspectos elementales

Introducción. Visual Basic para Aplicaciones (VBA) en Excel: aspectos elementales Introducción Visual Basic para Aplicaciones (VBA) en Excel: aspectos elementales Franco Guidi Polanco Escuela de Ingeniería Industrial Pontificia Universidad Católica de Valparaíso, Chile fguidi@ucv.cl

Más detalles

Temario detallado. Conceptos generales de lenguajes y compiladores. Proceso de compilación de un programa en C++ bajo Code::Blocks

Temario detallado. Conceptos generales de lenguajes y compiladores. Proceso de compilación de un programa en C++ bajo Code::Blocks Temario detallado Programación básica en C++ Conceptos generales de lenguajes y compiladores Proceso de compilación de un programa en C++ bajo Code::Blocks Estructura básica de un programa en C++ Análisis

Más detalles

Tema: FUNCIONES, PROCEDIMIENTOS Y RECURSIVIDAD.

Tema: FUNCIONES, PROCEDIMIENTOS Y RECURSIVIDAD. Programación I, Guía 6 1 Facultad : Ingeniería Escuela : Computación Asignatura: Programación I Tema: FUNCIONES, PROCEDIMIENTOS Y RECURSIVIDAD. Objetivos Utilizar la sintaxis de las funciones definidas

Más detalles

Escuela Politécnica Superior de Ingeniería Departamento de Ingeniería Informática

Escuela Politécnica Superior de Ingeniería Departamento de Ingeniería Informática Escuela Politécnica Superior de Ingeniería Departamento de Ingeniería Informática Fundamentos de la informática 2. Algoritmos, diagramas de flujo y pseudocódigo Contenido Algoritmos Diagramas de flujo

Más detalles

Tema 7: Programación con Matlab

Tema 7: Programación con Matlab Tema 7: Programación con Matlab 1. Introducción Matlab puede utilizarse como un lenguaje de programación que incluye todos los elementos necesarios. Añade la gran ventaja de poder incorporar a los programas

Más detalles

Compiladores y Lenguajes de Programación. Maria de Guadalupe Cota Ortiz

Compiladores y Lenguajes de Programación. Maria de Guadalupe Cota Ortiz Compiladores y Lenguajes de Programación Maria de Guadalupe Cota Ortiz Organizaciones que rigen las normas para estandarización de Lenguajes de Programación IEEE (Instituto de Ingenieros Eléctricos y Electrónicos)

Más detalles

Departamento de Informática Universidad de Valladolid Campus de Segovia TEMA 9: CRITERIOS DE CALIDAD DE DISEÑO MODULAR

Departamento de Informática Universidad de Valladolid Campus de Segovia TEMA 9: CRITERIOS DE CALIDAD DE DISEÑO MODULAR Departamento de Informática Universidad de Valladolid Campus de Segovia TEMA 9: CRITERIOS DE CALIDAD DE DISEÑO MODULAR CRITERIOS DE CALIDAD DE DISEÑO MODULAR Conceptos generales Cohesión y acoplamiento

Más detalles

Tema 2. Software. Informática (1º Ingeniería Civil) jcarmur@unex.es

Tema 2. Software. Informática (1º Ingeniería Civil) jcarmur@unex.es Tema 2. Software Informática (1º Ingeniería Civil) Curso 2011/2012 Javier Carmona Murillo jcarmur@unex.es Índice Introducción. Programas e instrucciones. Tipos y estructuras de datos. Algoritmos. Proceso

Más detalles

Estructuras de Control - Diagrama de Flujo

Estructuras de Control - Diagrama de Flujo Introducción a la Programación - Introducción a la Computación - Fundamentos de la Informática Ing. Electrónica - T.U.G. - T.U.E. - T.U.R. - T.U.W.- Prof. Tec. Elect. - T.U.T - T.U.M Área de Servicios

Más detalles

Distinguir las diferentes estructuras de repetición utilizadas en problemas con ciclos: mientras, haga-mientras, repita-hasta, para.

Distinguir las diferentes estructuras de repetición utilizadas en problemas con ciclos: mientras, haga-mientras, repita-hasta, para. ESTRUCTURAS DE REPETICIÓN OBJETIVOS Aprender a construir grandes y complejos problemas a través de la ejecución repetida de una secuencia de proposiciones llamados ciclos o estructuras repetitivas. Distinguir

Más detalles

TEMA 3. EL PROCESO DE COMPILACIÓN, DEL CÓDIGO FUENTE AL CÓDIGO MÁQUINA

TEMA 3. EL PROCESO DE COMPILACIÓN, DEL CÓDIGO FUENTE AL CÓDIGO MÁQUINA TEMA 3. EL PROCESO DE COMPILACIÓN, DEL CÓDIGO FUENTE AL CÓDIGO MÁQUINA Programa: Algoritmo (secuencia no ambigua, finita y ordenada de instrucciones para la resolución de un determinado problema) traducido

Más detalles

Universidad de Buenos Aires Facultad De Ingeniería. Operaciones Lógicas. [75.40] Algoritmos y Programación I. 2do Cuatrimestre 2010

Universidad de Buenos Aires Facultad De Ingeniería. Operaciones Lógicas. [75.40] Algoritmos y Programación I. 2do Cuatrimestre 2010 Universidad de Buenos Aires Facultad De Ingeniería Operaciones Lógicas [75.40] Algoritmos y Programación I 2do Cuatrimestre 2010 Cátedra: Ing. Pablo Guarna Autor: Bernardo Ortega Moncada Índice 1. Introducción

Más detalles

Presentación Concepto de Variable Transformaciones Algoritmo Diagrama de Flujo Ejemplos

Presentación Concepto de Variable Transformaciones Algoritmo Diagrama de Flujo Ejemplos Presentación Página del Curso Página del Curso: http://asignaturas.inf.udec.cl/ lpcp Ayudantes Francisco Roco: Página web: http://www.udec.cl/ franciscoroco e-mail: franciscoroco@udec.cl Pedro Zambrano:

Más detalles

Preliminares. Tipos de variables y Expresiones

Preliminares. Tipos de variables y Expresiones Preliminares. Tipos de variables y Expresiones Felipe Osorio Instituto de Estadística Pontificia Universidad Católica de Valparaíso Marzo 5, 2015 1 / 20 Preliminares Computadoras desarrollan tareas a un

Más detalles

1. Manejo de memoria estática 2. Manejo de memoria dinámica

1. Manejo de memoria estática 2. Manejo de memoria dinámica 1. Manejo de memoria estática 2. Manejo de memoria dinámica *La administración de memoria de una computadora es una tarea fundamental debido a que la cantidad de memoria es limitada. *El sistema operativo

Más detalles

TEMA 12: CUALIDADES DE UN BUEN DISEÑO

TEMA 12: CUALIDADES DE UN BUEN DISEÑO Departamento de Informática Universidad de Valladolid Campus de Segovia TEMA 12: CUALIDADES DE UN BUEN DISEÑO Prof. José Vicente Álvarez Bravo CRITERIOS DE CALIDAD Los criterios son el acoplamiento y la

Más detalles

INTRODUCCION A LA PROGRAMACION DE PLC

INTRODUCCION A LA PROGRAMACION DE PLC INTRODUCCION A LA PROGRAMACION DE PLC Esta guía se utilizará para estudiar la estructura general de programación de um PLC Instrucciones y Programas Una instrucción u orden de trabajo consta de dos partes

Más detalles

MANUAL DE USO DE SMART DFD

MANUAL DE USO DE SMART DFD MANUAL DE USO DE SMART DFD Computación (620033) Ayudantes: Leonardo Muñoz Erik Pinto lmmunoz@alumnos.ubiobio.cl erpinto@alumnos.ubiobio.cl http://ayudantiasubb.wordpress.com Este es un pequeño manual de

Más detalles

Estructura de Datos y de la Información. Pilas y expresiones aritméticas

Estructura de Datos y de la Información. Pilas y expresiones aritméticas Estructura de Datos y de la Información Pilas y expresiones aritméticas LIDIA Laboratorio de Investigación y desarrollo en Inteligencia Artificial Departamento de Computación Universidade da Coruña, España

Más detalles

Tema 6. Reutilización de código. Programación 2015-2016. Programación - Tema 6: Reutilización de código

Tema 6. Reutilización de código. Programación 2015-2016. Programación - Tema 6: Reutilización de código Tema 6 Reutilización de código Programación 2015-2016 Programación - Tema 6: Reutilización de código 1 Tema 6. Reutilización de código Modularidad. Implementación de métodos. Uso de métodos. Programación

Más detalles

Objetivo: Introducción conceptual y aplicación básica de los lenguajes del lado del servidor.

Objetivo: Introducción conceptual y aplicación básica de los lenguajes del lado del servidor. Sesión 03: Lenguajes web del servidor Competencias a Conseguir: - Conocer el entorno de trabajo a nivel de servidores web. - Instalación del localhost (Servidor Local). - Repaso general de PHP y ejercicios

Más detalles

Procesadores de lenguaje Tema 5 Comprobación de tipos

Procesadores de lenguaje Tema 5 Comprobación de tipos Procesadores de lenguaje Tema 5 Comprobación de tipos Departamento de Ciencias de la Computación Universidad de Alcalá Resumen Sistemas de tipos. Expresiones de tipo. Equivalencia de tipos. Sobrecarga,

Más detalles

EXPLORAR RELACIONES NUMÉRICAS EN LAS TABLAS DE MULTIPLICAR

EXPLORAR RELACIONES NUMÉRICAS EN LAS TABLAS DE MULTIPLICAR EXPLORAR RELACIONES NUMÉRICAS EN LAS TABLAS DE MULTIPLICAR er. Grado Universidad de La Punta Consideraciones Generales: En este año es necesario realizar un trabajo específico que favorezca la construcción

Más detalles

Estructura de Datos. Unidad I Tipos de Datos

Estructura de Datos. Unidad I Tipos de Datos Estructura de Datos Unidad I Tipos de Datos Conceptos Básicos Algoritmo: es una secuencia finita de pasos o instrucciones ordenadas crono-lógicamente que describen un método para resolver un problema específico.

Más detalles

3 ESTRUCTURAS DE CONTROL REPETITIVAS. BUCLES

3 ESTRUCTURAS DE CONTROL REPETITIVAS. BUCLES 3 ESTRUCTURAS DE CONTROL REPETITIVAS. BUCLES 3.1 Estructuras de repetición Una estructura de repetición, también llamada lazo o bucle, hace posible la ejecución repetida de secciones específicas de código.

Más detalles

TECNÓLOGO EN INFORMÁTICA PLAN DE ESTUDIOS

TECNÓLOGO EN INFORMÁTICA PLAN DE ESTUDIOS Administración Nacional de Universidad de la República Educación Pública Facultad de Ingenieria CF Res..0.07 Consejo Directivo Central Consejo Directivo Central Res..05.07 Res. 17.0.07 TECNÓLOGO EN INFORMÁTICA

Más detalles

POR UNA CULTURA HUMANISTA Y TRASCENDENTE R FORMATO DE PLANEACIÓN DE CURSO HRS. DEL CURSO: 48 CLAVE: 314 HRS. POR SEMANA: 4

POR UNA CULTURA HUMANISTA Y TRASCENDENTE R FORMATO DE PLANEACIÓN DE CURSO HRS. DEL CURSO: 48 CLAVE: 314 HRS. POR SEMANA: 4 N- R POR UNA CULTURA HUMANISTA Y TRASCENDENTE R FORMATO DE PLANEACIÓN DE CURSO CATEDRÁTICO: CARRERA: ASIGNATURA Ing. Fernando Robles Gil Sistemas Computacionales Hardware II (Matemáticas Discretas) INICIO

Más detalles

Algoritmos y Diagramas de Flujo 2

Algoritmos y Diagramas de Flujo 2 Algoritmos y Diagramas de Flujo 2 Programación Java NetBeans 7.0 RPC Contenido 2.1 Algoritmo...1 Fase de creación de un algoritmo...1 Herramientas de un algoritmo...2 2.2 Diagrama de Flujo...2 Símbolos

Más detalles

INTRODUCCIÓN. Estructura de Datos Tipos Abstractos de Datos (TAD S) Profs. Lorna Figueroa M. Mauricio Solar F. UTFSM 1 / 2008

INTRODUCCIÓN. Estructura de Datos Tipos Abstractos de Datos (TAD S) Profs. Lorna Figueroa M. Mauricio Solar F. UTFSM 1 / 2008 INTRODUCCIÓN Estructura de Datos Tipos Abstractos de Datos (TAD S) Para poder obtener un programa que resuelva un problema dado, son necesarios varios pasos : La formulación y especificación del problema

Más detalles

Pontificia Universidad Católica del Ecuador

Pontificia Universidad Católica del Ecuador 1. DATOS INFORMATIVOS: MATERIA O MÓDULO: CÓDIGO: CARRERA: NIVEL: PROGRAMACION IS-122 Ingeniería Primero No. CRÉDITOS: 6 CRÉDITOS TEORÍA: 6 CRÉDITOS PRÁCTICA: 0 SEMESTRE / AÑO ACADÉMICO: Primero 2012 2013

Más detalles

Introducción a la Programación 11 O. Humberto Cervantes Maceda

Introducción a la Programación 11 O. Humberto Cervantes Maceda Introducción a la Programación 11 O Humberto Cervantes Maceda Información del profesor Humberto Cervantes Maceda T 138 www.humbertocervantes.net/cursos Acerca de ustedes Nombre Carrera Qué experiencia

Más detalles

Soporte lógico de computadoras

Soporte lógico de computadoras Soporte lógico de computadoras Software: Sistemas Operativos Lenguajes de programación Lenguajes de Programación. Clasificación Proximidad del lenguaje al que entiende el ordenador: Bajo nivel: específico

Más detalles

Algorítmica y Lenguajes de Programación. Ordenación (i)

Algorítmica y Lenguajes de Programación. Ordenación (i) Algorítmica y Lenguajes de Programación Ordenación (i) Ordenación. Introducción A lo largo del curso hemos visto distintas formas de almacenar datos: Vectores. Matrices. Ficheros Listas (pilas y colas)

Más detalles

MATEMÁTICA PARA COMPUTACIÓN I Código 3102.30.04

MATEMÁTICA PARA COMPUTACIÓN I Código 3102.30.04 UNIVERSIDAD DE SAN CARLOS DE GUATEMALA USAC- ESCUELA DE FORMACION DE PROFESORES DE ENSEÑANZA MEDIA EFPEM- PROFESORADO DE INFORMÁTICA Y COMPUTACIÓN ESCUELA DE VACACIONES DICIEMBRE 2013 SALON:C6 HORA: 17:00

Más detalles

1 ELEMENTOS BASICOS DEL LENGUAJE

1 ELEMENTOS BASICOS DEL LENGUAJE 1 ELEMENTOS SICOS DEL LENGUJE Contenido: Variables su declaracion y asignacion Caracteres en java Secuencias de escape y comentarios Tipos de datos Operadores aritméticos, relacionales y lógicos Entrada

Más detalles

GENERACIÓN DE CÓDIGO

GENERACIÓN DE CÓDIGO GENERACIÓN DE CÓDIGO INTRODUCCION La generación de código es la fase más compleja de un compilador, puesto que no sólo depende de las características del lenguaje fuente sino también de contar con información

Más detalles

CONTENIDO. 1. Introducción. 2. Reseña histórica del computador. 3. Definición de computador.

CONTENIDO. 1. Introducción. 2. Reseña histórica del computador. 3. Definición de computador. CONTENIDO 1. Introducción. 2. Reseña histórica del computador. 3. Definición de computador. 4. Sistemas numéricos. 4.1 Generalidades. 42 Sistema binario. 4.3 Sistema octal,. 4.4 Sistema decimal. 4.5 Sistema

Más detalles

Universidad Metropolitana Castro Carazo Prof. Ing. Patricia Vargas. Material de apoyo Semana #2 PROGRAMACIÓN II

Universidad Metropolitana Castro Carazo Prof. Ing. Patricia Vargas. Material de apoyo Semana #2 PROGRAMACIÓN II Prof. Ing. Patricia Vargas 1 Universidad Metropolitana Castro Carazo Prof. Ing. Patricia Vargas Material de apoyo Semana #2 PROGRAMACIÓN II Agenda 1. Definición de variables locales y públicas. 2. Declaraciones

Más detalles

Programa de estudios por competencias Algoritmia. Programa elaborado por: María Obdulia González Fernández, Jesús Salas Ramírez

Programa de estudios por competencias Algoritmia. Programa elaborado por: María Obdulia González Fernández, Jesús Salas Ramírez Programa de estudios por competencias Algoritmia 1. Identificación del curso Programa educativo: Ing. En Computación Unidad de aprendizaje: Algoritmia Departamento de adscripción: Ciencias Biológicas Academia:

Más detalles

CAPÍTULO IV BREVE DESCRIPCIÓN DE LA INFRAESTRUCTURA DE CÓMPUTO VISUAL BASIC 6.0 PARA WINDOWS

CAPÍTULO IV BREVE DESCRIPCIÓN DE LA INFRAESTRUCTURA DE CÓMPUTO VISUAL BASIC 6.0 PARA WINDOWS CAPÍTULO IV BREVE DESCRIPCIÓN DE LA INFRAESTRUCTURA DE CÓMPUTO VISUAL BASIC 6.0 PARA WINDOWS 4.1 Antecedentes históricos El lenguaje de programación BASIC (Beginner's All purpose Symbolic Instruction Code)

Más detalles

CONTENIDOS. 2. Entidades primitivas para el desarrollo de algoritmos.

CONTENIDOS. 2. Entidades primitivas para el desarrollo de algoritmos. Introducción a la ciencia de la computación y a la programación 1. La computadora CONTENIDOS 2. Entidades primitivas para el desarrollo de algoritmos. 3. Metodología a seguir para la resolución de problemas

Más detalles

Tema 1: Computadores y Programas

Tema 1: Computadores y Programas Tema 1: Computadores y Programas Ingeniería Informática Ingeniería Técnica en Informática de Sistemas Ingeniería Técnica en Informática de Gestión Departamento de Ciencia de la Computación e I.A. Universidad

Más detalles

1 La Resolución de Problemas utilizando la Computadora

1 La Resolución de Problemas utilizando la Computadora La Resolución de Problemas utilizando la Computadora Lissette Alvarez Abril-Julio, 2004 El Computador es una máquina que no puede trabajar por si sola, únicamente realiza aquellas órdenes que el hombre

Más detalles

Muchas veces hemos visto un juego de billar y no nos percatamos de los movimientos de las bolas (ver gráfico 8). Gráfico 8

Muchas veces hemos visto un juego de billar y no nos percatamos de los movimientos de las bolas (ver gráfico 8). Gráfico 8 Esta semana estudiaremos la definición de vectores y su aplicabilidad a muchas situaciones, particularmente a las relacionadas con el movimiento. Por otro lado, se podrán establecer las características

Más detalles

ARREGLOS DEFINICION GENERAL DE ARREGLO

ARREGLOS DEFINICION GENERAL DE ARREGLO ARREGLOS DEFINICION GENERAL DE ARREGLO Conjunto de cantidades o valores homogéneos, que por su naturaleza se comportan de idéntica forma y deben de ser tratados en forma similar. Se les debe de dar un

Más detalles

Estructuras de repetición

Estructuras de repetición Estructuras de repetición Fundamentos de Programación Fundamentos de Programación I FP-PFI Curso 2005-2006 1 Estructuras iterativos Sentencia for for(inic; cond; increm) sentencia1; sentencia2; Sentencia

Más detalles

TRADUCTORES, COMPILADORES E INTÉRPRETES. EJERCICIOS TEMA 5, 6, 7 y 8.

TRADUCTORES, COMPILADORES E INTÉRPRETES. EJERCICIOS TEMA 5, 6, 7 y 8. TRADUCTORES, COMPILADORES E INTÉRPRETES. EJERCICIOS TEMA 5, 6, 7 y 8. 1.) (HOLUB). Escribir un traductor que reconozca definiciones de C siguiendo el estilo antiguo, tal como: prueba(uno, dos, tres, cuatro,

Más detalles

Capítulo 4 Procesos con estructuras de repetición

Capítulo 4 Procesos con estructuras de repetición Estructura de contador Capítulo 4 Procesos con estructuras de repetición Esta es una operación que incrementa en una unidad el valor almacenado en la variable c, cada vez que el flujo del diagrama pasa

Más detalles

Pontificia Universidad Católica de Chile Escuela de Ingeniería Departamento de Ciencia de la Computación

Pontificia Universidad Católica de Chile Escuela de Ingeniería Departamento de Ciencia de la Computación Pontificia Universidad Católica de Chile Escuela de Ingeniería Departamento de Ciencia de la Computación Competencias IIC1103 Introducción a la Programación (I/2010) Interrogación 1 13 de Abril de 2010

Más detalles

ARBOLES ARBOLES BINARIOS ORDENADOS. REPRESENTACIÓN Y OPERACIONES

ARBOLES ARBOLES BINARIOS ORDENADOS. REPRESENTACIÓN Y OPERACIONES ARBOLES ARBOLES BINARIOS ORDENADOS. REPRESENTACIÓN Y OPERACIONES Características ARBOLES - CONCEPTOS Cada elemento del árbol se relaciona con cero o más elementos a quienes llama hijos. Si el árbol no

Más detalles

MINISTERIO DE EDUCACIÓN DIRECCIÓN DE EDUCACIÓN TÉCNICA Y PROFESIONAL PROGRAMA DE LA ASIGNATURA PROGRAMACIÓN I ESPECIALIDAD INFORMÁTICA.

MINISTERIO DE EDUCACIÓN DIRECCIÓN DE EDUCACIÓN TÉCNICA Y PROFESIONAL PROGRAMA DE LA ASIGNATURA PROGRAMACIÓN I ESPECIALIDAD INFORMÁTICA. MINISTERIO DE EDUCACIÓN DIRECCIÓN DE EDUCACIÓN TÉCNICA Y PROFESIONAL PROGRAMA DE LA ASIGNATURA PROGRAMACIÓN I ESPECIALIDAD INFORMÁTICA. AUTORES: LIC. EDUARDO BRITO, LIC. MANUEL FARIÑAS, LIC. ROBERTO JORGE

Más detalles

Introducción a las Ciencias de la Computación

Introducción a las Ciencias de la Computación Introducción a las Ciencias de la Computación Colaboratorio de Computación Avanzada (CNCA) 2015 1 / 22 Contenidos 1 Computación e Informática Caracterización Áreas relacionadas 2 Antecedentes Orígenes

Más detalles

Nombre de la asignatura: Programación Estructurada. Créditos: 3-2 - 5. Aportación al perfil

Nombre de la asignatura: Programación Estructurada. Créditos: 3-2 - 5. Aportación al perfil Nombre de la asignatura: Programación Estructurada Créditos: 3-2 - 5 Aportación al perfil Diseñar, analizar y construir equipos y/o sistemas electrónicos para la solución de problemas en el entorno profesional,

Más detalles

6ª Práctica. Matlab página 1

6ª Práctica. Matlab página 1 6ª Práctica. Matlab página 1 PROGRAMACIÓN EN MATLAB PRÁCTICA 06 INSTRUCCIÓN BREAK TRATAMIENTO DE IMÁGENES EN MATLAB FUNCIONES Y GRÁFICOS EJERCICIO 1. INSTRUCCIÓN BREAK...1 EJERCICIO 2. TRATAMIENTO DE IMÁGENES

Más detalles

UNIVERSIDAD DEL VALLE DE MÉXICO PROGRAMA DE ESTUDIOS DE LICENCIATURA

UNIVERSIDAD DEL VALLE DE MÉXICO PROGRAMA DE ESTUDIOS DE LICENCIATURA UNIVERSIDAD L VALLE MÉXICO PROGRAMA ESTUDIOS LICENCIATURA ASIGNATURA PROGRAMACIÓN ESTRUCTURADA CLAVE 532712 CICLO ÁREA CURRICULAR AP SEGUNDO HORAS CON DOCENTE 60 TOTAL CRÉDITOS HORAS FORMACIÓN PRÁCTICA

Más detalles

PRUEBAS DE SOFTWARE TECNICAS DE PRUEBA DE SOFTWARE

PRUEBAS DE SOFTWARE TECNICAS DE PRUEBA DE SOFTWARE PRUEBAS DE SOFTWARE La prueba del software es un elemento crítico para la garantía de la calidad del software. El objetivo de la etapa de pruebas es garantizar la calidad del producto desarrollado. Además,

Más detalles

Nano Taller de Python

Nano Taller de Python Charla 5: Programación Funcional Royal Institute of Technology (KTH), Estocolmo, Suecia Grupo de Nanomateriales (GNM), Santiago, Chile 13 de enero 2009, de 13:00 a 14:00 Parte I Programación

Más detalles

Introducción a la calidad de código

Introducción a la calidad de código Universidad de Buenos Aires Facultad De Ingeniería Introducción a la calidad de código [75.40] Algoritmos y Programación I 2do Cuatrimestre 2010 Cátedra: Ing. Pablo Guarna Autor: Bernardo Ortega Moncada

Más detalles

Figura 4.1 Clasificación de los lenguajes de bases de datos

Figura 4.1 Clasificación de los lenguajes de bases de datos 1 Colección de Tesis Digitales Universidad de las Américas Puebla Romero Martínez, Modesto Este capítulo describen los distintos lenguajes para bases de datos, la forma en que se puede escribir un lenguaje

Más detalles

Fortran tiene dos tipos diferentes de subprogramas, las funciones y las subrutinas.

Fortran tiene dos tipos diferentes de subprogramas, las funciones y las subrutinas. PROGRAMACION MODULAR: La programación modular es un método de diseño que permite resolver un problema mediante su descomposición en problemas más simples o módulos que se pueden analizar, programar y poner

Más detalles

Funciones Reales en una Variable

Funciones Reales en una Variable Funciones Reales en una Variable Contenidos Concepto función Grafica de una función Dominio y Recorrido de una función Clasificación de la funciones Función Inversa Paridad de las Funciones Operaciones

Más detalles

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

Tema 2 Conceptos básicos de programación. Fundamentos de Informática Tema 2 Conceptos básicos de programación Fundamentos de Informática Índice Metodología de la programación Programación estructurada 2 Pasos a seguir para el desarrollo de un programa (fases): Análisis

Más detalles

INDICE Parte I. Conceptos 1. El estudio de los lenguajes de programación 2. Cuestiones de diseño de lenguajes

INDICE Parte I. Conceptos 1. El estudio de los lenguajes de programación 2. Cuestiones de diseño de lenguajes INDICE Parte I. Conceptos 1 1. El estudio de los lenguajes de programación 1.1. Por qué estudiar lenguajes de programación? 2 1.2. Breve historia de los lenguajes de programación 1.2.1. Desarrollo de los

Más detalles

Operaciones con vectores

Operaciones con vectores Fundamentos de Informática 2012-2013 Laboratorio 12: Vectores (2) Objetivos: Practicar con algoritmos típicos con vectores (arrays de una dimensión) Operaciones con vectores Interfaz Figura 12.1. Interfaz

Más detalles

Pontificia Universidad Católica del Ecuador

Pontificia Universidad Católica del Ecuador 1. DATOS INFORMATIVOS: MATERIA O MÓDULO: Programación de Computadoras CÓDIGO: 14303 CARRERA: NIVEL: Ingeniería Civil Primero No. CRÉDITOS: 4 CRÉDITOS TEORÍA: 2 CRÉDITOS PRÁCTICA: 2 SEMESTRE / AÑO ACADÉMICO:

Más detalles

Estructuras de datos: Árboles binarios de

Estructuras de datos: Árboles binarios de Estructuras de datos: Árboles binarios de búsqueda, Dep. de Computación - Fac. de Informática Universidad de A Coruña Santiago Jorge santiago.jorge@udc.es Árboles binarios de búsqueda, Table of Contents

Más detalles

Informática I. While & do While

Informática I. While & do While Asignatura: Informática I Trabajo práctico Nº5 While & do While Estructura repetitiva MIENTRAS o while En C la sentencia while (condición o expresión) instrucciones; es seguramente la más utilizada. La

Más detalles

Lenguaje de Diseño Primer Cuatrimestre 2015 1

Lenguaje de Diseño Primer Cuatrimestre 2015 1 Lenguaje de Diseño Primer Cuatrimestre 2015 1 Programación Modular Programación Estructurada Programas fáciles de leer y modificar Técnicas de Diseños Dividir y Conquistar Estructuras de Control Algoritmos

Más detalles

PROCEDIMIENTO OPERATIVO DESARROLLAR SISTEMAS INFORMÁTICOS PDO-COCTI-DTIN-04

PROCEDIMIENTO OPERATIVO DESARROLLAR SISTEMAS INFORMÁTICOS PDO-COCTI-DTIN-04 Autorización Este documento entra en vigor a partir del 2 de agosto del 2005, a través de su autorización por parte del Dr. Francisco Javier Rojas Monroy, Coordinador de Operaciones, Calidad y Teclogía

Más detalles

Escuela de Ingeniería en Informática Empresarial SYLLABUS

Escuela de Ingeniería en Informática Empresarial SYLLABUS Nombre módulo PROGRAMACIÓN Nº créditos 12 ECTS ( 324 horas totales, 216 horas presenciales, 108 horas de trabajo autónomo) Nivel Requisitos Contribución de este módulo a la formación. Subcompetencias del

Más detalles

PROGRAMACIÓ DIDÁCTICA: Secuanciación, Temporalización y Unidades Didácticas

PROGRAMACIÓ DIDÁCTICA: Secuanciación, Temporalización y Unidades Didácticas Departamento de Informática PROGRAMACIÓN DIDÁCTICA Curso 11-12 1 CONSEJERÍA DE EDUCACIÓN I.E.S. NERVIÓN Departamento de Informática CICLO FORMATIVO: TÉCNICO SUPERIOR EN DESARROLLO DE APLICACIONES MULTIPLATAFORMA.

Más detalles

Árbol binario. Elaborado por Ricardo Cárdenas cruz Jeremías Martínez Guadarrama Que es un árbol Introducción

Árbol binario. Elaborado por Ricardo Cárdenas cruz Jeremías Martínez Guadarrama Que es un árbol Introducción Árbol binario Elaborado por Ricardo Cárdenas cruz Jeremías Martínez Guadarrama Que es un árbol Introducción Un Árbol Binario es un conjunto finito de Elementos, de nombre Nodos de forma que: El Árbol Binario

Más detalles

ANÁLISIS SEMÁNTICO. Especificación formal: Semántica Operacional, semántica denotacional, semántica Axiomática, Gramáticas con Atributos.

ANÁLISIS SEMÁNTICO. Especificación formal: Semántica Operacional, semántica denotacional, semántica Axiomática, Gramáticas con Atributos. ANÁLISIS SEMÁNTICO El análisis semántico dota de un significado coherente a lo que hemos hecho en el análisis sintáctico. El chequeo semántico se encarga de que los tipos que intervienen en las expresiones

Más detalles

BANCOS. Manejo de Bancos. Como crear una ficha de Banco? Como modificar los datos de una ficha de Banco? Como borrar una ficha de Banco?

BANCOS. Manejo de Bancos. Como crear una ficha de Banco? Como modificar los datos de una ficha de Banco? Como borrar una ficha de Banco? BANCOS El Sistema de Gestión Administrativa permite el manejo de los movimientos bancarios. Seleccionada la opción de Bancos, el sistema presentara las siguientes opciones. Manejo de Bancos Manejo de movimientos

Más detalles

Tema 7. SISTEMAS SECUENCIALES SISTEMAS SECUENCIALES SÍNCRONOS

Tema 7. SISTEMAS SECUENCIALES SISTEMAS SECUENCIALES SÍNCRONOS Fundamentos de Computadores. Sistemas Secuenciales. T7-1 INDICE: Tema 7. SISTEMAS SECUENCIALES INTRODUCCIÓN SISTEMAS SECUENCIALES SÍNCRONOS TIPOS DE BIESTABLES o TABLAS DE ECITACIÓN DE LOS BIESTABLES o

Más detalles

Basic Object Oriented Programming (BOOP) Gramática del Lenguaje. Ever Mitta Flores

Basic Object Oriented Programming (BOOP) Gramática del Lenguaje. Ever Mitta Flores Ever Mitta Flores Índice 1. Clase @Principal...3 2. Comentarios...3 3. Definición de Atributos...3 4. Definición de Métodos...4 5. Declaración de Variables...4 6. Asignación de Valores...5 7. Definición

Más detalles

TEMA 2: DESARROLLO DEL SOFTWARE

TEMA 2: DESARROLLO DEL SOFTWARE TEMA 2: DESARROLLO DEL SOFTWARE EDI I Curso 2007/08 Escuela Politécnica Superior Universidad Autónoma de Madrid TEMA 2: DESARROLLO DEL SOFTWARE 2.1. Ciclo de vida del Software 2.2. Corrección de errores

Más detalles

18. Camino de datos y unidad de control

18. Camino de datos y unidad de control Oliverio J. Santana Jaria Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso 2006 2007 18. Camino de datos y unidad de control Un La versatilidad una característica deseable los Los

Más detalles

FACULTAD DE INGENIERÍA

FACULTAD DE INGENIERÍA NOMBRE DEL PROFESOR: Ing. Héctor Manuel Quej Cosgaya NOMBRE DE LA PRÁCTICA: Operadores y Expresiones PRÁCTICA NÚM. [ 3 ] LABORATORIO: MATERIA: UNIDAD: TIEMPO: Centro de Ingeniería Computacional Lenguaje

Más detalles

Presentación del Curso Virtual PROGRAMACIÓN WEB PHP CON MYSQL BÁSICO

Presentación del Curso Virtual PROGRAMACIÓN WEB PHP CON MYSQL BÁSICO Presentación del Curso Virtual PROGRAMACIÓN WEB PHP CON MYSQL BÁSICO INNOVATIVA CENTRO DE TRANSFERENCIA Y DESARROLLO TECNOLÓGICO ESPE CECAI Capacitación Virtual La mejor opción para su crecimiento profesional

Más detalles

Estructura de datos (arreglos) Vectores y Matrices

Estructura de datos (arreglos) Vectores y Matrices Apunte del curso PROGRAMACIÓN (FI-UBA,, J. T. P. Ing. Z. CATALDI; A.T.P. Srta. A Pauluzzi, Sr. C Corradino, Sr. F Gómez Estructura de datos (arreglos) Hasta aquí se han visto distintos tipos de estructuras

Más detalles

TEMA 5. CONTROL DE FLUJO DEL PROGRAMA. Sentencia Instrucción Expresión Operadores + Operandos Sintaxis: Sentencia ;

TEMA 5. CONTROL DE FLUJO DEL PROGRAMA. Sentencia Instrucción Expresión Operadores + Operandos Sintaxis: Sentencia ; TEMA 5. CONTROL DE FLUJO DEL PROGRAMA 5.1 Sentencias Una sentencia es una expresión seguida de un punto y coma. Sentencia Instrucción Expresión Operadores + Operandos Sintaxis: Sentencia ; El ; es obligatorio

Más detalles

Semántica Denotacional

Semántica Denotacional Semántica Denotacional Idea: El significado de un programa es la función denotada por el programa Componentes del metalenguaje para la definición semántica denotacional de un L.P.: Dominios sintácticos

Más detalles

Técnicas de prueba 1. FUNDAMENTOS DE LA PRUEBA DEL SOFTWARE

Técnicas de prueba 1. FUNDAMENTOS DE LA PRUEBA DEL SOFTWARE Técnicas de prueba El desarrollo de Sistemas de software implica la realización de una serie de actividades predispuestas a incorporar errores (en la etapa de definición de requerimientos, de diseño, de

Más detalles

Datos de la materia. Clave de la materia: Liga al programa de la asignatura: Competencias a desarrollar:

Datos de la materia. Clave de la materia: Liga al programa de la asignatura: Competencias a desarrollar: Instituto Tecnológico y Estudios Superiores Monterrey Campus Estado México Escuela Diseño, Ingeniería y Arquitectura Departamento Tecnologías Información y Computación Datos la materia Nombre la materia:

Más detalles