Metodologías de Programación II Dominios y Excepciones

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

Download "Metodologías de Programación II Dominios y Excepciones"

Transcripción

1 Metodologías de Programación II Dominios y Excepciones Dr. Alejandro Guerra-Hernández Departamento de Inteligencia Artificial Facultad de Física e Inteligencia Artificial aguerra@uv.mx Maestría en Inteligencia Artificial 2012

2 Tipos, Dominios y Excepciones El tipo inferido de una función corresponde a un subconjunto del dominio de su definición. Si el dominio de una función son los enteros, esto no significa que pueda trabajar con todos los enteros. El mecanismo para trabajar con estos detalles se conoce como manejo de excepciones. Provocar (raise) una excepción provoca una interrupción en el programa, que puede ser interceptada y procesada por éste mismo.

3 Funciones parciales El dominio de una definición es el conjunto de valores con los que la función lleva a cabo su cómputo. Hay muchas funciones matemáticas que son parciales, ej. División, Logaritmo natural. Lo mismo suele ocurrir con estructuras de datos complejas, ej. car de una lista vacía, factorial de un negativo.

4 Excepciones La división por cero produce una excepción. 1 # 1/0 ;; 2 Exception: Division_by_zero. O las funciones parciales. 1 # let car l = match l with h::t -> h ;; 2 Characters 12-34: 3 let car l = match l with h::t -> h ;; 4 ˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆ 5 Warning 8: this pattern-matching is not exhaustive. 6 Here is an example of a value that is not matched: 7 [] 8 val car : a list -> a = <fun>

5 Ejemplo llamada Si mantenemos la definición de car/1: 1 # car [] ;; 2 Exception: Match_failure ("", 1, 12).

6 Excepciones con failure Toman como argumento un string: 1 # let car = function 2 [] -> failwith "Lista Vacia" 3 h::t -> h ;; 4 val car : a list -> a = <fun> 5 # car [] ;; 6 Exception: Failure "Lista Vacia".

7 Sintaxis El tipo predefinido para las excepciones es exn. Es un tipo suma extendible: el conjunto de valores del tipo puede extenderse declarando nuevos constructores. Formas: exception Name;; y exception Name of t ;;

8 Ejemplos de declaraciones Se declaran por constructores (mayúscula inicial): 1 # exception MY_EXC ;; 2 exception MY_EXC 3 # exception Profundidad of int ;; 4 exception Profundidad of int 5 # Profundidad 5 ;; 6 - : exn = Profundidad 5 También son monomórficos: 1 # exception Valor of a ;; 2 Characters 19-21: 3 exception Valor of a ;; 4 ˆˆ 5 Error: Unbound type parameter a

9 Provocando una Excepción Toma como argumento una excepción y regresa tipos completamente polimórficos: 1 # raise ;; 2 - : exn -> a = <fun> 3 # raise MY_EXC ;; 4 Exception: MY_EXC. 5 # raise (Profundidad 3) ;; 6 Exception: Profundidad 3.

10 Manejando Excepciones Provocar excepciones introduce un nuevo control de flujo. Salimos del terreno puramente funcional. No confundir el cómputo de una excepción y la producción de una excepción: 1 # let computar x = Failure x ;; 2 val computar : string -> exn = <fun> 3 # computar "test" ;; 4 - : exn = Failure "test" 5 # let producir x = raise (computar x) ;; 6 val producir : string -> a = <fun> 7 # producir "test" ;; 8 Exception: Failure "test".

11 Uso: try... with 1 # exception Zero_encontrado ;; 2 exception Zero_encontrado 3 # let rec mult_rec lst = match lst with 4 [] -> 1 5 0::_ -> raise Zero_encontrado 6 n::ns -> n*(mult_rec ns) ;; 7 val mult_rec : int list -> int = <fun> 8 # let mult_lista lst = try mult_rec lst with Zero_encontrado -> 0 ;; 9 val mult_lista : int list -> int = <fun> 10 # mult_lista [1;2;3;0;4] ;; 11 - : int = 0 12 # mult_lista [1;2;3] ;; 13 - : int = 6

Metodologías de Programación II Introducción a OCaml

Metodologías de Programación II Introducción a OCaml Metodologías de Programación II Introducción a OCaml Dr. Alejandro Guerra-Hernández Departamento de Inteligencia Artificial Facultad de Física e Inteligencia Artificial aguerra@uv.mx http://www.uv.mx/aguerra

Más detalles

Introducción a OCaml. October 19, 2015

Introducción a OCaml. October 19, 2015 Introducción a OCaml October 19, 2015 OCaml: introducción Es un dialecto de ML. Lenguaje de programación funcional. Fuertemente tipado. Con inferencia de tipos. Polimórfico. [Página oficial: http://www.ocaml.org/

Más detalles

9 DECLARACIÓN DE TIPOS Y PATRONES

9 DECLARACIÓN DE TIPOS Y PATRONES 9 DECLARACIÓN DE TIPOS Y PATRONES Aunque los tipos de datos predefinidos en Ocaml permiten la construcción de estructuras de datos a partir de tuplas y listas, normalmente es necesario definir nuevos tipos

Más detalles

Metodologías de Programación II Introducción

Metodologías de Programación II Introducción Metodologías de Programación II Introducción Dr. Alejandro Guerra-Hernández Departamento de Inteligencia Artificial Facultad de Física e Inteligencia Artificial aguerra@uv.mx http://www.uv.mx/aguerra Maestría

Más detalles

8 INTRODUCCIÓN AL OBJECTIVE CAML

8 INTRODUCCIÓN AL OBJECTIVE CAML 8 INTRODUCCIÓN AL OBJECTIVE CAML Objective Caml (Ocaml) es un lenguaje de programación funcional tipificado estáticamente, aunque los tipos pueden inferirse en tiempo de ejecución; y con un mecanismos

Más detalles

En programación funcional no hay instrucciones de asignación; La evaluación de un programa funcional no tiene efectos colaterales; y

En programación funcional no hay instrucciones de asignación; La evaluación de un programa funcional no tiene efectos colaterales; y 1 INTRODUCCIÓN El tema de este segundo curso de Metodologías de Programación es la Programación Funcional En este primer capítulo se presenta un panorama general de este paradigma de programación, con

Más detalles

Pontificia Universidad Católica del Ecuador

Pontificia Universidad Católica del Ecuador 1.- DATOS INFORMATIVOS: MATERIA O MÓDULO: Álgebra CÓDIGO: CARRERA: Ingeniería Civil NIVEL: Preparatorio No. DE CRÉDITOS: 4 CRÉDITOS TEORÍA: 4 SEMESTRE / AÑO ACADÉMICO: Primero / año académico 2008 2009

Más detalles

Tema 7: Polimorfismo. Índice

Tema 7: Polimorfismo. Índice Tema 7: Polimorfismo Antonio J. Sierra Índice Introducción. Sobrecarga de métodos. Objetos como parámetros. Paso de argumentos. Devolución de objetos. Recursividad. Control de acceso. Static. Final. Argumento

Más detalles

Metodologías de Programación II Listas en Lisp

Metodologías de Programación II Listas en Lisp Metodologías de Programación II Listas en Lisp Dr. Alejandro Guerra-Hernández Departamento de Inteligencia Artificial Facultad de Física e Inteligencia Artificial aguerra@uv.mx http://www.uv.mx/aguerra

Más detalles

Lógica y Programación

Lógica y Programación Lógica y Programación Programación funcional con Haskell Antonia M. Chávez, Carmen Graciani, Agustín Riscos Dpto. Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla Programación

Más detalles

Tema 2. Tipos predefinidos

Tema 2. Tipos predefinidos Programación Declarativa Haskell Informática Sistemas Curso 2003-2004 Pepe Gallardo Universidad de Málaga Tema 2. Tipos predefinidos 2.1 Tipos simples predefinidos El tipo Bool El tipo Int El tipo Integer

Más detalles

Programación Funcional Lisp-Scheme

Programación Funcional Lisp-Scheme Programación Funcional Lisp-Scheme Dr. Oldemar Rodríguez Rojas Escuela de Informática Universidad de Nacional Dónde bajar? Lisp (EdScheme): www.schemers.com com Ejemplo: => (+ (* 3(+ (* 24) (+ 35))) (+

Más detalles

11 EJEMPLOS DE PROGRAMAS OCAML

11 EJEMPLOS DE PROGRAMAS OCAML 11 EJEMPLOS DE PROGRAMAS OCAML En esta sección ilustraremos los conceptos presentados hasta ahora, con dos aplicaciones desarrolladas en Ocaml. La primera aplicación es una calculadora implementada como

Más detalles

FUNCIONES: Repaso Functions: A Review

FUNCIONES: Repaso Functions: A Review FUNCIONES: Repaso Functions: A Review Intuitivamente la palabra función se refiere a un asignación o correspondencia de un conjunto a otro Por ejemplo: Considera un conjunto de estudiantes y un conjunto

Más detalles

µ-c: Manual de referencia del lenguaje Micro-C

µ-c: Manual de referencia del lenguaje Micro-C µ-c: Manual de referencia del lenguaje Micro-C Introducción Este manual de referencia describe en detalle el lenguaje Micro-C, para ser implementado como proyecto de los cursos de Compíladores I y II en

Más detalles

POLINOMIOS. En la Escuela Anteriormente estudiaron, aunque sin saberlo, las siguientes funciones polinómicas:

POLINOMIOS. En la Escuela Anteriormente estudiaron, aunque sin saberlo, las siguientes funciones polinómicas: OLINOMIOS arte de la introducción aquí presentada fue adaptada de: http://escritoriodocentes.educ.ar/recursos/pdf/matematica/polinomios_historia.pdf Significado olinomio significa literalmente "muchas

Más detalles

Programación Básica. Martin Méndez Facultad de Ciencias Universidad Autónoma de San Luis Potosí

Programación Básica. Martin Méndez Facultad de Ciencias Universidad Autónoma de San Luis Potosí Programación Básica Martin Méndez Facultad de Ciencias Universidad Autónoma de San Luis Potosí Objetivo del Curso Estudiar y aplicar los conceptos básicos de programación estructurada en un lenguaje de

Más detalles

Funciones algebraicas

Funciones algebraicas Funciones algebraicas Las funciones polinomiales tienen una gran aplicación en la elaboración de modelos que describen fenómenos reales. Algunos de ellos son: la concentración de una sustancia en un compuesto,

Más detalles

Declaración de variables (integer, single, double, boolean, etc.) en Visual Basic. Dim. Ejemplos. (CU00309A)

Declaración de variables (integer, single, double, boolean, etc.) en Visual Basic. Dim. Ejemplos. (CU00309A) aprenderaprogramar.com Declaración de variables (integer, single, double, boolean, etc.) en Visual Basic. Dim. Ejemplos. (CU00309A) Sección: Cursos Categoría: Curso Visual Basic Nivel I Fecha revisión:

Más detalles

Manejo de Excepciones. Agustín J. González ELO329

Manejo de Excepciones. Agustín J. González ELO329 Manejo de Excepciones Agustín J. González ELO329 Manejo de Excepciones El Manejo de Excepciones es un mecanismo interno para comunicar estados de error desde una parte del programa a otra. Comúnmente,

Más detalles

Funciones & Estructuras de control

Funciones & Estructuras de control Funciones & Estructuras de control Universidad de Concepción, Chile Departamento de Geofísica Programación Científica con Software libre Primavera, 2011 Universidad de Concepción Contenidos 1 2 3 En la

Más detalles

Introducción a Haskell. Cecilia Manzino

Introducción a Haskell. Cecilia Manzino Paradigmas de programación Un paradigma de programación representa un estilo particular o filosofía para la construcción del software. Los más comunes dan lugar a los siguientes tipos de programación:

Más detalles

EJEMPLO DE CÓDIGO JAVA BÁSICO. CREAR CLASES CON CAMPOS, CONSTRUCTOR Y MÉTODOS. LA PALABRA CLAVE THIS (CU00652B)

EJEMPLO DE CÓDIGO JAVA BÁSICO. CREAR CLASES CON CAMPOS, CONSTRUCTOR Y MÉTODOS. LA PALABRA CLAVE THIS (CU00652B) APRENDERAPROGRAMAR.COM EJEMPLO DE CÓDIGO JAVA BÁSICO. CREAR CLASES CON CAMPOS, CONSTRUCTOR Y MÉTODOS. LA PALABRA CLAVE THIS (CU00652B) Sección: Cursos Categoría: Curso Aprender programación Java desde

Más detalles

Tema 3. Patrones y Definiciones de Funciones

Tema 3. Patrones y Definiciones de Funciones Informática Haskell Matemáticas Curso 2004-2005 Pepe Gallardo Universidad de Málaga Tema 3. Patrones y Definiciones de Funciones 3.1 Comparación de Patrones Patrones constantes Patrones para listas Patrones

Más detalles

Introducción a PL/SQL

Introducción a PL/SQL Introducción a 21/11/2014 1. Qué es? 2. Bloque Introducción a Grupo de Ingeniería del Software y Bases de Datos Departamento de Lenguajes y Sistemas Informáticos Universidad de Sevilla Noviembre 2014 1.

Más detalles

Tema: Compilador Micro C

Tema: Compilador Micro C Compiladores. Guía 13 1 Tema: Compilador Micro C Contenido Facultad: Ingeniería Escuela: Computación Asignatura: Compiladores En esta guía se modificará el resultado de las guías anteriores para integrar

Más detalles

3. Estructuras iterativas

3. Estructuras iterativas 3. Estructuras iterativas Fundamentos de Informática Dpto. Lenguajes y Sistemas Informáticos Curso 2012 / 2013 Índice Estructura iterativas 1. Análisis de algoritmos iterativos 2. Ej11: While 3. Ej12:

Más detalles

APUNTES PARA LENGUAJES Y COMPILADORES

APUNTES PARA LENGUAJES Y COMPILADORES APUNTES PARA LENGUAJES Y COMPILADORES Cuando se define un lenguaje de programación, se determina su sintaxis y su semántica La sintaxis se refiere a las notaciones necesarias para escribir programas, y

Más detalles

Tema 9: Declaraciones de tipos y clases

Tema 9: Declaraciones de tipos y clases Tema 9: Declaraciones de tipos y clases Programación declarativa (2009 10) José A. Alonso Jiménez Grupo de Lógica Computacional Departamento de Ciencias de la Computación e I.A. Universidad de Sevilla

Más detalles

GUIA DE PROCEDIMIENTOS Y FUNCIONES ALMACENADOS EN MYSQL

GUIA DE PROCEDIMIENTOS Y FUNCIONES ALMACENADOS EN MYSQL GUIA DE PROCEDIMIENTOS Y FUNCIONES ALMACENADOS EN MYSQL Conceptos, historia y contexto http://dev.mysql.com/doc/refman/5.0/es/stored-procedures.html Los procedimientos almacenados y funciones son nuevas

Más detalles

Probabilidades. Universidad de las Américas Instituto de Matemática, Física y Estadística. Centro de Aprendizaje Matemático - CAM

Probabilidades. Universidad de las Américas Instituto de Matemática, Física y Estadística. Centro de Aprendizaje Matemático - CAM Universidad de las Américas Instituto de Matemática, Física y Estadística. Centro de Aprendizaje Matemático - CAM Probabilidades P(A) = Casos favorables Casos posibles Objetivos: Definir el concepto de

Más detalles

5.2 LA FUNCION EXPONENCIAL. Copyright Cengage Learning. All rights reserved.

5.2 LA FUNCION EXPONENCIAL. Copyright Cengage Learning. All rights reserved. 5.2 LA FUNCION EXPONENCIAL Copyright Cengage Learning. All rights reserved. La Función Exponencial Para toda base positiva, a 1, podemos definir una función exponencial de la forma f (x) = a x, Con dominio

Más detalles

Tema 9: Declaraciones de tipos y clases

Tema 9: Declaraciones de tipos y clases Tema 9: Declaraciones de tipos y clases Informática (2016 17) José A. Alonso Jiménez Grupo de Lógica Computacional Departamento de Ciencias de la Computación e I.A. Universidad de Sevilla 2 / 41 Tema 9:

Más detalles

Introducción a los Computadores Estructuras de control selectivas en C

Introducción a los Computadores Estructuras de control selectivas en C Introducción a los Computadores Estructuras de control selectivas en C Alejandro Piedrahita H. Instituto de Matemáticas Facultad de Ciencias Exactas y Naturales Universidad de Antioquia Copyleft 2013.

Más detalles

Paradigmas de Programación. Práctica 3. Árboles estrictamente binarios

Paradigmas de Programación. Práctica 3. Árboles estrictamente binarios Paradigmas de Programación Práctica 3 Árboles estrictamente binarios En el módulo Fb_tree, escrito en ocaml, está definido el tipo de dato 'a fb_tree que sirve para representar árboles binarios llenos

Más detalles

El sistema de clases de Haskell. Introducción

El sistema de clases de Haskell. Introducción Capítulo 5. El sistema de clases de Haskell 56 El sistema de clases de Haskell Introducción Función monomórfica: sólo se puede usar para valores de un tipo concreto not :: Bool Bool not True = False not

Más detalles

Programación 1 Tema 3. Información, datos, operaciones y expresiones

Programación 1 Tema 3. Información, datos, operaciones y expresiones Programación 1 Tema 3 Información, datos, operaciones y expresiones Índice Datos y tipos de datos Datos primitivos en C++ Expresiones e instrucción de asignación Datos y tipos de datos Problema información

Más detalles

Fundamentos de Computadores y Lenguajes

Fundamentos de Computadores y Lenguajes Fundamentos de Computadores y Lenguajes 1. Elementos básicos de los lenguajes 2. Instrucciones de control 3. Tipos de datos 4. Métodos 5. Modularidad y Abstracción 6. Tratamiento de errores 7. Entrada/salida

Más detalles

Introducción a la programación orientada a objetos

Introducción a la programación orientada a objetos Introducción a la programación orientada a objetos Cristina Cachero Castro Pedro J. Ponce de León Amador Estela Saquete Boró Departamento de lenguajes y sistemas informáticos Universidad de Alicante Índice

Más detalles

Expresión, Operador, Operando, Asignación, Prioridad

Expresión, Operador, Operando, Asignación, Prioridad 4. EXPRESIONES Y OPERADORES Conceptos: Resumen: Expresión, Operador, Operando, Asignación, Prioridad En este tema se presentan los siguientes elementos de la programación: las expresiones y los operadores.

Más detalles

Manejo de Excepciones

Manejo de Excepciones Manejo de Excepciones Agustín J. González ELO329 ELO329 1 Lectura sugerida Texto en línea: Eckel, Bruce. Thinking About C++, 2nd Edition, Prentice-Hall, 2000. Gratis en www.bruceeckel.com. ELO329 2 Manejo

Más detalles

MODULO DE LOGARITMO. 1 log 2 4 16. log N x b N N se llama antilogaritmo, b > 0 y b 1. Definición de Logaritmo. Liceo n 1 Javiera Carrera 2011

MODULO DE LOGARITMO. 1 log 2 4 16. log N x b N N se llama antilogaritmo, b > 0 y b 1. Definición de Logaritmo. Liceo n 1 Javiera Carrera 2011 MODULO DE LOGARITMO Nombre:.. Curso : Medio Los aritmos están creados para facilitar los cálculos numéricos. Por aritmo podemos convertir los productos en sumas, los cocientes en restas, las potencias

Más detalles

Elabore un diagrama de flujo y la codificación de un programa para:

Elabore un diagrama de flujo y la codificación de un programa para: NOMBRE DE LA Ejercicios aplicando ciclos OBJETIVO: El estudiante resolverá diversos ejercicios mediante el desarrollo de diagramas de flujo y programas aplicando ciclos MATERIAL Y EQUIPO NECESARIO: Papel

Más detalles

Tema 7. El sistema de clases

Tema 7. El sistema de clases Programación Declarativa Haskell Informática Sistemas Curso 2003-2004 Pepe Gallardo Universidad de Málaga Tema 7. El sistema de clases 7.1 Funciones Sobrecargadas Clases e Instancias 7.2 Algunas Clases

Más detalles

7. Otras sentencias Sentencia break. 84 A. García-Beltrán y J.M. Arranz

7. Otras sentencias Sentencia break. 84 A. García-Beltrán y J.M. Arranz 84 A. García-Beltrán y J.M. Arranz 7. Otras sentencias Objetivos: a) Describir el funcionamiento de las otras sentencias de control (break, continue y try-catch) b) Interpretar el resultado de una secuencia

Más detalles

Tema 3. Patrones y Definiciones de Funciones

Tema 3. Patrones y Definiciones de Funciones Programación Declarativa Haskell Informática Sistemas Curso 2003-2004 Pepe Gallardo Universidad de Málaga Tema 3. Patrones y Definiciones de Funciones 3.1 Comparación de Patrones Patrones constantes Patrones

Más detalles

MATE 3031. Dr. Pedro Vásquez UPRM. P. Vásquez (UPRM) Conferencia 1 / 77

MATE 3031. Dr. Pedro Vásquez UPRM. P. Vásquez (UPRM) Conferencia 1 / 77 MATE 3031 Dr. Pedro Vásquez UPRM P. Vásquez (UPRM) Conferencia 1 / 77 P. Vásquez (UPRM) Conferencia 2 / 77 Qué es una función? MATE 3171 En esta parte se recordará la idea de función y su definición formal.

Más detalles

Excepciones. Excepciones

Excepciones. Excepciones Excepciones FJP Unidad 12 Excepciones Una excepción es la representación de una condición de error o cualquier situación no esperada en el resultado de un método. Son instancias de subclases de la clase

Más detalles

Paradigma Funcional Caso de estudio: ML. Lenguajes de Programación 2017

Paradigma Funcional Caso de estudio: ML. Lenguajes de Programación 2017 Paradigma Funcional Caso de estudio: ML Lenguajes de Programación 2017 Paradigma Funcional FUNCIÓN: Mapeo de un dominio en un rango El mapeo se puede describir por medio de una EXPRESIÓN f(1) = 2 f(2)

Más detalles

Modulo 11. Clases y Objetos en Java

Modulo 11. Clases y Objetos en Java El siguiente texto es una traducción no oficial del documento publicado por el grupo JEDI, Introduction to Programming 1, no pretende en ningún momento reemplazar los contenidos generados por este grupo.

Más detalles

Variables, tipos de datos y operadores. M. en C. Erika Vilches

Variables, tipos de datos y operadores. M. en C. Erika Vilches Variables, tipos de datos y operadores M. en C. Erika Vilches Declarando una Variable A Java le importa el tipo: No te permite poner un número de punto flotante en una variable de tipo entero. A menos

Más detalles

Estructura de datos Tema 2: Tipos Abstractos de Datos (TADs)

Estructura de datos Tema 2: Tipos Abstractos de Datos (TADs) Universidad de Valladolid Departamento de informática Campus de Segovia Estructura de datos Tema 2: Tipos Abstractos de Datos (TADs) Prof. Montserrat Serrano Montero ÍNDICE Tipos de datos El tipo abstracto

Más detalles

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA DIVISIÓN DE CIENCIAS BÁSICAS COORDINACIÓN DE MATEMÁTICAS LOGARITMOS

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA DIVISIÓN DE CIENCIAS BÁSICAS COORDINACIÓN DE MATEMÁTICAS LOGARITMOS LOGARITMOS Introducción El empleo de los logaritmos es de gran utilidad para entender muchos de los desarrollos que se analizan en la Matemática, y para explicar una variedad muy extensa de problemas que

Más detalles

2º BACHILLERATO MATEMÁTICAS APLICADAS A LAS CIENCIAS SOCIALES II FICHA TEMA 6.- FUNCIONES. LÍMITES Y CONTINUIDAD PROFESOR: RAFAEL NÚÑEZ

2º BACHILLERATO MATEMÁTICAS APLICADAS A LAS CIENCIAS SOCIALES II FICHA TEMA 6.- FUNCIONES. LÍMITES Y CONTINUIDAD PROFESOR: RAFAEL NÚÑEZ º BACHILLERATO MATEMÁTICAS APLICADAS A LAS CIENCIAS SOCIALES II FICHA TEMA.- FUNCIONES. LÍMITES CONTINUIDAD PROFESOR: RAFAEL NÚÑEZ -----------------------------------------------------------------------------------------------------------------------------------------------------------------.-

Más detalles

MANEJO DE EXCEPCIONES en C++ Dr. Oldemar Rodríguez R. Escuela de Informática Universidad Nacional

MANEJO DE EXCEPCIONES en C++ Dr. Oldemar Rodríguez R. Escuela de Informática Universidad Nacional MANEJO DE EXCEPCIONES en C++ Dr. Oldemar Rodríguez R. Escuela de Informática Universidad Nacional C++ posee un mecanismo de gestión de errores incorporado que se denomina manejo de excepciones. La utilización

Más detalles

APUNTES PROII 2º PARCIAL.

APUNTES PROII 2º PARCIAL. APUNTES PROII 2º PARCIAL. MEMORIA DINÁMICA. Hay que distinguir entre: Estática: memoria que se reserva en tiempo de compilación. Dinámica: memoria que se reserva en tiempo de ejecución. 5 pasos: 1. Declaración

Más detalles

INTRODUCCION A LA PROGRAMACION EN JAVA

INTRODUCCION A LA PROGRAMACION EN JAVA Departament d Arquitectura de Computadors INTRODUCCION A LA PROGRAMACION EN JAVA Índice Paso de parámetros en tiempo de ejecución Métodos static Atributos static Try-catch-finally Throws/throw 2 Paso de

Más detalles

Paradigma Funcional Caso de estudio: ML. Lenguajes de Programación 2018

Paradigma Funcional Caso de estudio: ML. Lenguajes de Programación 2018 Paradigma Funcional Caso de estudio: ML Lenguajes de Programación 2018 FUNCIÓN: Mapeo de un dominio en un rango El mapeo se puede describir por medio de una EXPRESIÓN f(1) = 2 f(2) = 3 Enumeración f(x)

Más detalles

Prof. Dr. Paul Bustamante

Prof. Dr. Paul Bustamante Prácticas de C++ Practica Nº 4 Fundamentos de Programación Informática II Prof. Dr. Paul Bustamante Practica Nº 4 Programación en C++ Pág. 1 ÍNDICE ÍNDICE... 1 1. Introducción... 1 1.1 Números Perfectos....

Más detalles

Logaritmos. Cuál es la etimología de la palabra logaritmo? Proviene del griego Lógos: estilo, manera, relación, razón Arithmós: número

Logaritmos. Cuál es la etimología de la palabra logaritmo? Proviene del griego Lógos: estilo, manera, relación, razón Arithmós: número Logaritmos La invención de los logaritmos se debe al matemático escocés John Neper quien, a principios del siglo XVII, intentó idear un método que aliviara los complejos cálculos que debían realizarse

Más detalles

Imprimir PDF en WebDynpro para JAVA sin utilizar Interactive Forms en llamadas RFC.

Imprimir PDF en WebDynpro para JAVA sin utilizar Interactive Forms en llamadas RFC. Imprimir PDF en WebDynpro para JAVA sin utilizar Interactive Forms en llamadas RFC. Se puede imprimir un pdf utilizando una llamada RFC el cual entregará el pdf vía una variable binaria. Entonces si en

Más detalles

FUNDAMENTOS DE INFORMÁTICA

FUNDAMENTOS DE INFORMÁTICA FUNDAMENTOS DE INFORMÁTICA Tema 3 Estructuras de datos Departamento de Ingeniería de Sistemas y Automática Universidad de Vigo undamentos de Informática. Departamento de Ingeniería de Sistemas y Automática.

Más detalles

metodologías de programación ii

metodologías de programación ii dr. alejandro guerra-hernández metodologías de programación ii notas de programación funcional Universidad Veracruzana Facultad de Física e Inteligencia Artificial Departamento de Inteligencia Artificial

Más detalles

Fracciones numéricas enteras

Fracciones numéricas enteras Números racionales Fracciones numéricas enteras En matemáticas, una fracción numérica entera expresa la división de un número entero en partes iguales. Una fracción numérica consta de dos términos: El

Más detalles

Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones

Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Unidad Didáctica 2 Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión 1.0.3 Índice

Más detalles

Herramientas digitales de auto-aprendizaje para Matemáticas

Herramientas digitales de auto-aprendizaje para Matemáticas real de con Herramientas digitales de auto-aprendizaje para Matemáticas, Grupo de Innovación Didáctica Departamento de Matemáticas Universidad de Extremadura real de con Índice real de con real de con.

Más detalles

Tema II: Introducción al Lenguaje Funcional

Tema II: Introducción al Lenguaje Funcional Tema II: Introducción al Lenguaje Funcional Características de Haskell Lenguaje funcional de o. superior fuertemente tipificado. Clasifica los entes de un programa en: objetos (constantes y funciones)

Más detalles

Tema 5. Análisis semántico

Tema 5. Análisis semántico Departamento de Tecnologías de la Información Tema 5 Análisis semántico Ciencias de la Computación e Inteligencia Artificial Índice 5.1 Características del análisis semántico 5.2 Gramáticas atribuidas

Más detalles

Algoritmos y Estructuras de Datos Tema 2: Diseño de Algoritmos

Algoritmos y Estructuras de Datos Tema 2: Diseño de Algoritmos Algoritmos y Estructuras de Datos Tema 2: Diseño de Algoritmos 1! 1. Algoritmos recursivos " 1.1 Algoritmos recursivos. Recursión simple " 1.2 Algoritmos con vuelta atrás y ejemplos! 2. Complejidad de

Más detalles

DIGE-DeCyder XML Parser Documentación

DIGE-DeCyder XML Parser Documentación DIGE-DeCyder XML Parser Documentación Funcionamiento del parser: 1. El archivo xml cuya estructura se puede ver en [Estructura del XML] es guardado en memoria mapeando cada dato a una de las clases definidas

Más detalles

230086 - POO - Programación Orientada a Objetos

230086 - POO - Programación Orientada a Objetos Unidad responsable: Unidad que imparte: Curso: Titulación: Créditos ECTS: 2016 230 - ETSETB - Escuela Técnica Superior de Ingeniería de Telecomunicación de Barcelona 701 - AC - Departamento de Arquitectura

Más detalles

UNIDAD 3: ANALICEMOS LA FUNCION EXPONENCIAL Y LOGARITMICA.

UNIDAD 3: ANALICEMOS LA FUNCION EXPONENCIAL Y LOGARITMICA. UNIDAD 3: ANALICEMOS LA FUNCION EXPONENCIAL Y LOGARITMICA Históricamente, los exponentes fueron introducidos en matemáticas para dar un método corto que indicara el producto de varios factores semejantes,

Más detalles

Programación Funcional en LISP Lógica para Ciencias de la Computación

Programación Funcional en LISP Lógica para Ciencias de la Computación Programación Funcional en LISP Lógica para Ciencias de la Computación Primer Cuatrimestre de 2009 Material Adicional Introducción A lo largo de la carrera estudiaremos diversos paradigmas de programación:

Más detalles

Programación Orientada a Objetos

Programación Orientada a Objetos 1 Clase: Programación Orientada a Objetos El elemento básico de la programación orientada a objetos en Java es la clase. Una clase define la forma y comportamiento de un objeto. Para crear una clase sólo

Más detalles

Metodologías de Programación II Macros en Lisp

Metodologías de Programación II Macros en Lisp Metodologías de Programación II Macros en Lisp Dr. Alejandro Guerra-Hernández Departamento de Inteligencia Artificial Facultad de Física e Inteligencia Artificial aguerra@uv.mx http://www.uv.mx/aguerra

Más detalles

Práctica 1. Programación Funcional Introducción a Helium

Práctica 1. Programación Funcional Introducción a Helium Práctica 1. Programación Funcional Introducción a Helium Who? Lenguajes y Paradigmas de Programación Objetivo de la práctica Presentar las facilidades básicas del entorno de programación Helium Presentar

Más detalles

Clase adicional 2. Estructuras básicas de control. Temas

Clase adicional 2. Estructuras básicas de control. Temas Clase adicional 2 Temas Estructuras de control Sentencia condicional Iteración Clases Definir una clase Crear una instancia de una clase Campos estáticos Problemas de la clase adicional Problema de diseño

Más detalles

Diseño Basado en Componentes Curso 2008 / 09

Diseño Basado en Componentes Curso 2008 / 09 Errores y excepciones (I) Ingeniería Informática Universidad Carlos III de Madrid Excepciones en VB.NET Error: Evento que se produce durante la ejecución de un programa, provocando una interrupción en

Más detalles

Introducción a Haskell. El lenguaje Haskell

Introducción a Haskell. El lenguaje Haskell Capítulo 2. Introducción a Haskell 9 Introducción a Haskell Un ejemplo de fichero Haskell El lenguaje Haskell Haskell es un lenguaje funcional puro, no estricto y fuertemente tipificado. Puro = transparencia

Más detalles

RELACIÓN EJERCICIOS NÚMEROS RACIONALES Y REALES 4º B CURSO 2010-11

RELACIÓN EJERCICIOS NÚMEROS RACIONALES Y REALES 4º B CURSO 2010-11 RELACIÓN EJERCICIOS NÚMEROS RACIONALES Y REALES º B CURSO 00- Expresa las siguientes fracciones en forma decimal e indica de qué tipo es dicho cociente / /0 0/ / Entero, Decimal exacto 0 0, Periódico puro,

Más detalles

CURSOSO. Aritmética: Númerosnaturalesyenteros. Númerosracionalesyfraciones. MATEMÁTICAS. AntonioF.CostaGonzález

CURSOSO. Aritmética: Númerosnaturalesyenteros. Númerosracionalesyfraciones. MATEMÁTICAS. AntonioF.CostaGonzález CURSOSO CURSOSO MATEMÁTICAS Aritmética: Númerosnaturalesyenteros. Númerosracionalesyfraciones. AntonioF.CostaGonzález DepartamentodeMatemáticasFundamentales FacultaddeCiencias Índice 1 Introducción y objetivos

Más detalles

Metodología de Programación I Tutorial de Prolog (3/3)

Metodología de Programación I Tutorial de Prolog (3/3) Metodología de Programación I Tutorial de Prolog (3/3) Dr. Alejandro Guerra-Hernández Departamento de Inteligencia Artificial Facultad de Física e Inteligencia Artificial aguerra@uv.mx http://www.uv.mx/aguerra

Más detalles

Conteo de Relaciones y Funciones Posibles

Conteo de Relaciones y Funciones Posibles Conteo de Relaciones y Funciones Posibles Departamento de Matemáticas Conteo de Relaciones y Funciones Posibles p.1/?? Número de Relaciones Posibles de A en B Consideremos dos conjuntos: A = {a 1,a 2,...,a

Más detalles

E/S POR CONSOLA DE C++ Parte I. Elementos Básicos Dr. Oldemar Rodríguez R.

E/S POR CONSOLA DE C++ Parte I. Elementos Básicos Dr. Oldemar Rodríguez R. E/S POR CONSOLA DE C++ Parte I. Elementos Básicos Dr. Oldemar Rodríguez R. Dado que C++ es un superconjunto de C, todos los elementos del lenguaje C están contenidos en el lenguaje C++. Esto implica que

Más detalles

LOGARITMOS. El logaritmo de un número es, entonces, el exponente a que debe elevarse otro número que llamado base, para que dé el primer número.

LOGARITMOS. El logaritmo de un número es, entonces, el exponente a que debe elevarse otro número que llamado base, para que dé el primer número. LOGARITMOS A. DEFINICIONES La función y=2 x se puede representar gráficamente. Para ello se debe tabular de la siguiente forma. X - -4-3 -2-1 0 1 2 3 Y=2 x 0.0625.125.25.5 1 2 4 8 La gráfica sería esta:

Más detalles

Herramientas digitales de auto-aprendizaje para Matemáticas

Herramientas digitales de auto-aprendizaje para Matemáticas Herramientas digitales de auto-aprendizaje para Matemáticas, Grupo de Innovación Didáctica Departamento de Matemáticas Universidad de Extremadura Índice la cadena Tabla de Dada una función f : D R R,

Más detalles

Nano Taller de Python

Nano Taller de Python Charla 4: Programación Orientada a Objetos Royal Institute of Technology (KTH), Estocolmo, Suecia Grupo de Nanomateriales (GNM), Santiago, Chile 13 de enero 2009, de 10:00 a 11:00

Más detalles

Una matriz es una tabla ordenada (por filas y columnas) de escalares a i j de la forma: ... ... a... ...

Una matriz es una tabla ordenada (por filas y columnas) de escalares a i j de la forma: ... ... a... ... MATRICES Las matrices se utilizan en el cálculo numérico, en la resolución de sistemas de ecuaciones lineales, de las ecuaciones diferenciales y de las derivadas parciales. Tienen también muchas aplicaciones

Más detalles

Límites y continuidad

Límites y continuidad Estudio de la continuidad de la función en el punto = : Comprobemos, como primera medida, que la función está definida en =. Para =, tenemos que determinar f() = + = 6 + = 8, luego eiste. Calculamos, entonces

Más detalles

Tema 1: Programación Funcional

Tema 1: Programación Funcional Tema 1: Programación Funcional A. Chávez-González 1 A. Riscos-Núñez 1 F. Sancho-Caparrini 1 1 Departamento de Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla http://www.cs.us.es/cursos/lp/

Más detalles

Qué fracción se representa en este conjunto? Tres subconjuntos pintados en un conjunto formado por cuatro subconjuntos: 3 4

Qué fracción se representa en este conjunto? Tres subconjuntos pintados en un conjunto formado por cuatro subconjuntos: 3 4 INTRODUCCIÓN A LAS FRACCIONES Observa el siguiente dibujo: Hay 2 banderas que tienen franjas amarillas en un total de banderas, o sea, Hay 1 bandera verde en un total de banderas: 1 Hay 3 banderas que

Más detalles

Formato para prácticas de laboratorio

Formato para prácticas de laboratorio UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA FACULTAD DE INGENIERÍA (UNIDAD MEXICALI) Formato para prácticas de laboratorio CARRERA PLAN DE ESTUDIO CLAVE DE UNIDAD DE APRENDIZAJE NOMBRE DE LA UNIDAD DE APRENDIZAJE

Más detalles

Tema 4 Probabilidad condicionada: teoremas básicos. Independencia de sucesos

Tema 4 Probabilidad condicionada: teoremas básicos. Independencia de sucesos Tema 4 Probabilidad condicionada: teoremas básicos. Independencia de sucesos 1. Probabilidad condicionada. Espacio de probabilidad condicionado La probabilidad condicionada es uno de los conceptos clave

Más detalles

EXCEPCIONES EN JAVA. Las sentencias que tratan las excepciones son try y catch. La sintaxis es:

EXCEPCIONES EN JAVA. Las sentencias que tratan las excepciones son try y catch. La sintaxis es: EXCEPCIONES EN JAVA Uno de los problemas más importantes al escribir aplicaciones es el tratamiento de los errores. Errores no previstos que distorsionan la ejecución del programa. Las excepciones de Java

Más detalles

Fundamentos de la Programación Orientada a Objetos Interacción de objetos

Fundamentos de la Programación Orientada a Objetos Interacción de objetos Fundamentos de la Programación Orientada a Objetos Interacción de objetos Programación Orientada a Objetos Facultad de Informática Dep. Ingeniería del Software e Inteligencia Artificial Universidad Complutense

Más detalles

Lenguaje Java. Sesión 3: Tratamiento de errores. Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles

Lenguaje Java. Sesión 3: Tratamiento de errores. Experto Universitario en Desarrollo de Aplicaciones para Dispositivos Móviles Lenguaje Java Sesión 3: Tratamiento de errores 2012-2013 Depto. Ciencia de la Computación e IA Índice Excepciones Captura de excepciones Propagación de excepciones Nested exceptions Errores en tiempo de

Más detalles

INSTITUTO TECNOLÓGICO DE NUEVO LAREDO ING. EN SISTEMAS COMPUTACIONALES

INSTITUTO TECNOLÓGICO DE NUEVO LAREDO ING. EN SISTEMAS COMPUTACIONALES OBJETIVO: El estudiante elaborará un programa que inserte datos a una base de datos de MS Access a través de un programa en C# MATERIAL Y EQUIPO NECESARIO: Microsoft Access Microsoft Visual C# EJERCICIO:

Más detalles

En Java, un arreglo es un grupo de variables (llamados elementos o componentes) que contienen valores, todos del mismo tipo.

En Java, un arreglo es un grupo de variables (llamados elementos o componentes) que contienen valores, todos del mismo tipo. Arreglos Los arreglos son estructuras de datos que consisten de elementos de datos relacionados, del mismo tipo. Los arreglos son entidades son entidades de longitud fija: conservan la misma longitud una

Más detalles