I Programación funcional básica con Haskell 98 1
|
|
|
- Andrés Díaz Palma
- hace 7 años
- Vistas:
Transcripción
1 Índice General Prólogo Convenios i xxiii I Programación funcional básica con Haskell Programación funcional Funciones Sesiones y declaraciones Reducción de expresiones Órdenes de reducción aplicativo y normal Evaluación perezosa Sobre Haskell Introducción a Haskell El lenguaje Haskell Tipos simples predefinidos El tipo Bool El tipo Int El tipo Integer El tipo F loat El tipo Double El tipo Char Operadores de igualdad y orden Constructores de tipo predefinidos Tuplas Listas El constructor de tipo ( ) Comentarios Operadores Operadores frente a funciones Comparación de Patrones Patrones constantes Patrones para listas Patrones para tuplas ix
2 x ÍNDICE GENERAL Patrones aritméticos Patrones nombrados o seudónimos El patrón subrayado Errores comunes Patrones y evaluación perezosa Expresiones case La función error Funciones a trozos Expresiones condicionales Definiciones locales Expresiones lambda Sangrado Ámbitos y módulos Ejercicios Funciones de orden superior y polimorfismo Parcialización Aplicación parcial Secciones Funciones de orden superior Funciones de orden superior sobre enteros Polimorfismo La composición de funciones Otras funciones polimórficas Polimorfismo en listas Polimorfismo en tuplas Un iterador polimórfico sobre los naturales Definiciones de tipo Sinónimos de tipo Definiciones de tipos de datos Tipos enumerados Uniones Productos Tipos recursivos Tipos Parametrizados (o Polimórficos) Definiciones newtype Propiedades de funciones Sobrecarga Un ejemplo de sobrecarga Ejercicios El sistema de clases de Haskell Tipos y clases de tipos. Jerarquía de clases El sistema de clases Declaración de clases La clase Eq de Prelude Contextos
3 ÍNDICE GENERAL xi Instancias paramétricas Subclases. La clase Ord de Prelude Un ejemplo: los enteros módulo n Intersección de clases Visualizando y leyendo datos. Read y Show de Prelude Las clases Num, Integral y F ractional de Prelude Los tipos numéricos de Haskell Ambigüedad en las constantes numéricas Promoción numérica Ejemplo: los racionales como instancias genéricas Ejercicios Programación con listas El tipo lista Secuencias aritméticas. La clase Enum Concatenación de listas Inducción sobre listas Selectores Emparejando listas Aplicando una función a los elementos de una lista Filtros Listas por comprensión Semántica de listas por comprensión Plegado de listas foldr foldl Ordenación de listas Ordenación por inserción Ordenación por mezcla Ordenación rápida Funciones combinatorias Los segmentos iniciales de una lista Los segmentos de datos consecutivos de una lista Permutaciones de una lista Otras funciones predefinidas Ejercicios Entrada y salida Operaciones de entrada y salida El problema de la entrada y salida El tipo IO Excepciones Un formateador de textos Una implementación ineficiente Una implementación eficiente Utilidades para el manejo de documentos Una clase de tipos documentables
4 xii ÍNDICE GENERAL Ejemplos II Programación avanzada Evaluación perezosa. Redes de procesos Evaluación perezosa Argumentos estrictos Procesando estructuras infinitas Listas parciales y listas infinitas Aproximaciones o listas parciales Inducción sobre listas parciales Procesando estructuras infinitas La criba de Eratóstenes La lista de factoriales Los números de Fibonacci El triángulo de Pascal Sucesiones contadoras. Una sucesión que se cuenta a sí misma Sucesiones de parejas contadoras Redes de procesos Redes finitas de procesos La red que calcula el Triángulo de Pascal La red que calcula la sucesión de números primos Procesos con varias entradas La lista de factoriales Generación de los números de Fibonacci con una red de procesos Sucesiones en general Los números de Hamming Interacción de procesos cliente-servidor Patrones irrefutables y comparación postergada de patrones Ejercicios Programación con árboles y grafos Árboles Funciones de orden superior sobre árboles Árboles binarios Árboles binarios de búsqueda Funciones de orden superior para árboles binarios Inducción para árboles binarios Arrays Una implementación ineficiente Una implementación eficiente Grafos y búsqueda en grafos Búsqueda en anchura y en profundidad Los grafos como instancias de una clase uniparamétrica Grafos con pesos
5 ÍNDICE GENERAL xiii Los grafos con pesos como instancias de clases biparamétricas Una clase Haskell para grafos con pesos Ejercicios Programación modular y tipos abstractos de datos Módulos Bibliotecas estandarizadas Declaraciones de módulos Importación Importación cualificada Tipos Abstractos de Datos Representación Representación con interfaz no sobrecargado Representación con un interfaz sobrecargado El TAD conjunto (Conjunto) El TAD Lista Ordenada (OrdLista) El TAD Diccionario (Diccionario) Un índice KWIC (KeyWord In Context) Datos del problema La función kwic Algunas funciones y sinónimos de tipos útiles La función creanoclaves Modelo de datos para la resolución La función kwic Ejercicios Programación con Mónadas Concepto de mónada Clases de constructores de tipos La clase F unctor La clase Monad La clase MonadP lus Interpretación de las propiedades Interpretación del operador (>>=) Relación entre funtor y mónada La notación do Ejemplos de mónadas La mónada identidad La mónada escritora La mónada lectora La mónada de transformadores de estado La lista como mónada indeterminista La mónada error Un evaluador monádico Operaciones con mónadas Combinado mónadas Transformadores monádicos
6 xiv ÍNDICE GENERAL 10.7 Ejercicios III Aplicaciones Algoritmos numéricos programados funcionalmente Introducción Búsqueda de puntos fijos Extrapolación por paso al límite Álgebra lineal numérica Arrays Listas de listas Series de potencias Ejercicios Puzzles y solitarios Algunos problemas combinatorios El producto máximo con un conjunto de dígitos El problema de las vasijas El problema de los caníbales y los misioneros El solitario de Abreu La sopa de letras Un esbozo de la solución Buscando las apariciones de un palabra Movimiento de matrices y lecturas de líneas El problema de las ocho reinas Soluciones mediante listas por comprensión Solución mediante búsqueda en grafos Grafos acíclicos El problema del coloreado de mapas Calculando los colores de los países fronterizos Un algoritmo para colorear mapas Coloreados con un número de colores mínimo Es preferible empezar coloreando los países con más países fronterizos El problema generalizado de las torres de Hanoi Movimientos entre dos torres Movimientos entre una torre y una configuración Un puzzle con fichas Representación de huecos y fichas Estudio de movimientos de una ficha Movimientos entre configuraciones Programación funcional estilo Prolog El problema de McCarthy Ejercicios
7 ÍNDICE GENERAL xv 13 Analizadores Analizadores y la clase Read Gramáticas y la notación BNF El tipo ReadS La clase Read Un analizador para árboles binarios Gramáticas recursivas por la izquierda Analizadores monádicos Secuenciación Alternancia Filtros Iteración Elección parcial Un analizador para términos Ejercicios Simulación Generación de aleatorios por congruencias Programando secuencias pseudo aleatorias Algunos resultados teóricos Simulación en el juego del poker Generando un mazo de cartas Búsqueda de ciertas jugadas: parejas, tríos, etc Contando todas las jugadas Obteniendo semillas y aleatorios a través del sistema Un modelo monádico para la simulación El juego de la lotería primitiva Realizando escrutinios Generación de sorteos Estudio estadístico de ciertas combinaciones Descripción monádica del juego de la primitiva Simulación monádica de juegos con dados Mezclando valores producidos por varias acciones Plegando valores monádicos Repetición de varias tiradas con varios dados Contabilizando jugadas IV Aspectos teóricos Técnicas de programación y transformaciones de programas Inducción estructural Parámetros acumuladores Los números de Fibonacci Cálculo del factorial de un natural Plegados estrictos Transformación de programas. El modelo desplegar/plegar Un ejemplo sencillo de transformación
8 xvi ÍNDICE GENERAL Las reglas desplegar/plegar Reducción de la complejidad por transformación Corrección parcial de los programas transformados Programas a partir de especificaciones Especificaciones ejecutables Especificaciones no ejecutables Transformación de una especificación no ejecutable Semántica denotacional de un lenguaje imperativo Representación de entornos con tuplas Representación de entornos con funciones El lenguaje imperativo de Dijkstra Una semántica determinista para el lenguaje de Dijkstra Una semántica indeterminista para el lenguaje de Dijkstra Ejercicios Introducción al λ cálculo Sintaxis del lambda cálculo δ reducción y β reducción λ teorías Eta conversión y extensionalidad Reducción generada por un programa Formas normales. Teoremas de Church Rosser Ordenes de reducción. Teorema de estandarización Lambda definibilidad Operaciones lógicas Computabilidad Puntos fijos y recursión Listas en el λc Los sistemas de tipos de Church y de Curry Propiedades del sistema λ Curry La correspondencia de Howard Curry de Bruijn Ejemplos prácticos de inferencia de tipos Caso de un único argumento Caso de varios argumentos Caso en que aparecen otras variables predefinidas Inferencia de tipos en presencia de recursión Inferencia de tipos en presencia de patrones Reglas elementales para inferencia de tipos El λ cálculo polimórfico Inferencia de tipos en presencia de polimorfismo Un teorema de parametricidad para funciones polimórficas 546 V Ejercicios de Exámenes, Ayudas a Ejercicios y Soluciones Ejercicios de Exámenes Año
9 ÍNDICE GENERAL xvii 17.1 Año Año Año Año Soluciones a los Ejercicios de Exámenes Año Año Año Año Año Ayudas a Ejercicios Seleccionados Introducción a Haskell Definiciones de tipo El sistema de clases de Haskell Programación con listas Evaluación perezosa. Redes de procesos Programación con árboles y grafos Algoritmos numéricos programados funcionalmente Puzzles y solitarios Analizadores Simulación Técnicas de Programación y Transformaciones de programas Introducción al λ-cálculo Soluciones a Ejercicios Introducción a Haskell Definiciones de tipo El sistema de clases de Haskell Programación con listas Evaluación perezosa. Redes de procesos Programación con árboles y grafos Programación con Mónadas Algoritmos numéricos programados funcionalmente Puzzles y solitarios Analizadores Simulación Técnicas de Programación y Transformaciones de programas Introducción al λ cálculo Referencias bibliográficas 823
RAZONANDO CON HASKELL UN CURSO SOBRE PROGRAMACIÓN FUNCIONAL. A Charo, Pepa, Ana y Chari INTERNATIONAL THOMSON EDITORES SPAIN PARANINFO
RAZONANDO CON HASKELL UN CURSO SOBRE PROGRAMACIÓN FUNCIONAL A Charo, Pepa, Ana y Chari INTERNATIONAL THOMSON EDITORES SPAIN PARANINFO hola Blas Carlos Ruiz Jiménez, Francisco Gutiérrez López y José Enrique
Contenido. Prólogo... Prólogo a la edición en español Argumentos y proposiciones lógicas Introducción
CONTENIDO vii Contenido Prólogo... Prólogo a la edición en español... XVIl XXI 1 Cálculo proposicional... 1 1.1 Argumentos y proposiciones lógicas 1.1.1 Introducción 1 1 1.1.2 Algunos argumentos lógicos
Agradecimientos. Nota de los autores. 1 Problemas, algoritmos y programas 1
Prologo Agradecimientos Nota de los autores Índice general I III V VII 1 Problemas, algoritmos y programas 1 1.1 Programas y la actividad de la programación.................... 4 1.2 Lenguajes y modelos
TÍTULO: MATEMÁTICA DISCRETA Y LÓGICA Disponibilidad
TÍTULO: MATEMÁTICA DISCRETA Y LÓGICA Disponibilidad Calculo proposicional 1 Argumentos y proposiciones lógicas 1 Algunos argumentos lógicos importantes 2 Proposiciones 4 Conexiones lógicas 5 Negación (tabla)
Programación Declarativa Haskell Informática Sistemas Curso Pepe Gallardo Universidad de Málaga. Tema 8. Listas
Programación Declarativa Haskell Informática Sistemas Curso 2003-2004 Pepe Gallardo Universidad de Málaga Tema 8. Listas 8.1 Secuencias aritméticas 8.2 Algunas funciones predefinidas 8.3 Listas por comprensión
Contenido. Capítulo I Sistemas numéricos 2. Capítulo II Métodos de conteo 40
CONTENIDO v Contenido Contenido de la página Web de apoyo... xi Página Web de apoyo... xvii Prefacio... xix Capítulo I Sistemas numéricos 2 1.1 Introducción... 4 1.2 Sistema decimal... 5 1.3 Sistemas binario,
INDICE Prologo Capitulo 1. Algoritmos y programas Capitulo 2. La resolución de los problemas con computadoras y las herramientas de programación
INDICE Prologo XI Capitulo 1. Algoritmos y programas 1.1. Configuraciones de una computadora 1 1.2. Lenguajes de programación 2 1.3. Resolución de problemas 1.3.1. Fase de resolución del problema 3 1.3.1.1.
PROGRAMACIÓN EN JAVA
1. INTRODUCCIÓN A LA PROGRAMACIÓN 1.1. Datos, algoritmos y programas 1.1.1. Definición de algoritmo 1.1.2. Datos 1.1.3. Características de un programa 1.2. Paradigmas de programación 1.2.1. Programación
Informática Haskell Matemáticas Curso Pepe Gallardo Universidad de Málaga. Tema 8. Listas
Informática Haskell Matemáticas Curso 2004-2005 Pepe Gallardo Universidad de Málaga Tema 8. Listas 8.1 Secuencias aritméticas 8.2 Algunas funciones predefinidas 8.3 Listas por comprensión Ejemplo: QuickSort
Lenguajes funcionales: λ-cálculo
Lenguajes funcionales: λ-cálculo λ-cálculo (Church 1933) Cálculo para el estudio formal del comportamiento de las funciones Sintaxis: λ expresiones Reglas de reducción de λ expresiones Método matemático
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
INDICE. Prólogo de la Segunda Edición
INDICE Prólogo de la Segunda Edición XIII Capitulo 1. Algoritmos y Programas 1 1.1. Los sistemas de procesamiento de la información 2 1.2. Concepto de algoritmo 4 1.2.1. Características de los algoritmos
Guía del Curso IFCD052PO PROGRAMACIÓN EN JAVA
Guía del Curso IFCD052PO PROGRAMACIÓN EN JAVA Modalidad de realización del curso: Titulación: Online Diploma acreditativo con las horas del curso OBJETIVOS CONTENIDOS UNIDAD DIDÁCTICA 1. INTRODUCCIÓN A
INDICE Parte I Algoritmos y herramientas de programación Capitulo 1. Computadoras y lenguajes de programación Actividades de Programación Resueltas
INDICE Prologo a la tercera edición xiii Prologo a la segunda edición xxvii Parte I Algoritmos y herramientas de programación Capitulo 1. Computadoras y lenguajes de programación 3 1.1. Organización de
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
Tema 3: Tipos y clases
Tema 3: 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 / 32 IM Tema 3: Tipos y clases
Tema 3: Tipos y clases
Tema 3: 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 Tema 3: Tipos y clases
Tema 3: Tipos y clases
Tema 3: Tipos y clases Programación declarativa (2010 11) José A. Alonso Jiménez Grupo de Lógica Computacional Departamento de Ciencias de la Computación e I.A. Universidad de Sevilla Tema 3: Tipos y 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
Contenido. Prefacio Orígenes de la programación orientada a objetos... 1
Prefacio... xv 1. Orígenes de la programación orientada a objetos... 1 1.1 La crisis del software... 1 1.2 Evolución del software... 3 1.3 Introducción a la programación orientada a procedimientos... 4
CONTENIDOS MATEMÁTICA 1ER. AÑO BI Y 1ER AÑO BE
CONTENIDOS MATEMÁTICA 1ER. AÑO BI Y 1ER AÑO BE Contenido 1: Números Naturales Formulas en N: Producción de fórmulas que permitan calcular el paso n de un proceso que cumple una cierta regularidad. Transformaciones
Tema 8: Funciones de orden superior
Tema 8: Funciones de orden superior Programación declarativa (2010 11) José A. Alonso Jiménez Grupo de Lógica Computacional Departamento de Ciencias de la Computación e I.A. Universidad de Sevilla 2 /
Tema 8: Funciones de orden superior
Tema 8: Funciones de orden superior 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 Tema
Laboratorio Análisis Lógico Práctica 2: Tipos de datos en Haskell
Laboratorio Análisis Lógico Práctica 2: Tipos de datos en Haskell Pedro A. Góngora Luna 1 1. Operadores La figura 1 muestra la lista de algunos de los operadores básicos definidos en el preludio. La lista
Tema 6: Funciones recursivas
Tema 6: Funciones recursivas 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 Tema 6: Funciones
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)
Bachillerato Internacional. Matemáticas Nivel Medio. Programa para el curso 1º ( )
1 Bachillerato Internacional. Matemáticas Nivel Medio. Programa para el curso 1º (2015-2016) Tema 1: NÚMEROS REALES Conjuntos numéricos. Números naturales. Números enteros. Números racionales. Números
Tema 1 INTRODUCCIÓN A LOS LENGUAJES DE PROGRAMACIÓN
Tema 1 INTRODUCCIÓN A LOS LENGUAJES DE PROGRAMACIÓN - Introducción - Sintaxis - Semántica básica - Tipos de datos - Expresiones y enunciados - Procedimientos y ambientes - Tipos abstractos de datos y módulos
Informática Haskell Matemáticas Curso Pepe Gallardo Universidad de Málaga. Temario
Informática Haskell Matemáticas Curso 2004-2005 Pepe Gallardo Universidad de Málaga Temario 1 Introducción y semántica operacional 2 Tipos predefinidos 3 Patrones y Definiciones de Funciones 4 Funciones
Programación Funcional
Programación Funcional Año 2018 Carrera/ Plan: (Dejar lo que corresponda) Licenciatura en Informática Plan 2003-07/Plan 2012 Licenciatura en Informática Plan 2015 Año: 4to Régimen de Cursada: Semestral
Contenido. Contenidos interactivos... xiii Plataforma de contenidos interactivos... xviii Prefacio... xix. Parte I Fundamentos...
Contenido Contenidos interactivos... xiii Plataforma de contenidos interactivos... xviii Prefacio... xix Parte I Fundamentos... 1 Capítulo I Lógica, conjuntos e inducción... 2 1.1 Introducción... 4 1.2
Aplicación de la Inducción Matemática Programación Funcional. Julio Ariel Hurtado Alegría Departamento de Sistemas Universidad del Cauca
Aplicación de la Inducción Matemática Programación Funcional Julio Ariel Hurtado Alegría Departamento de Sistemas Universidad del Cauca Motivación Programación Imperativa Declarativa Procedimental Ejemplo:
Índice general 7. Presentación 15
ÍNDICE GENERAL Índice general 7 Presentación 15 1. Introducción 19 1.1. Antecedentes históricos de la computación................... 19 1.2. Definiciones previas............................... 24 1.3.
Tutorial Haskell David Julián Guzmán Cárdenas Cristian Alexanther Rojas Cárdenas Luis Ernesto Gil Castellanos
Tutorial Haskell David Julián Guzmán Cárdenas Cristian Alexanther Rojas Cárdenas Luis Ernesto Gil Castellanos Agenda 1. 2. 3. 4. 5. 6. Introducción Aspectos básicos del lenguaje Tipos y clases de tipos
En lo particular, esta materia permitirá al alumno aplicar las herramientas básicas de matemáticas discretas en:
Nombre de la asignatura: Matemáticas Discretas Créditos: 3 2-5 Aportación al perfil En lo particular, esta materia permitirá al alumno aplicar las herramientas básicas de matemáticas discretas en: El análisis
MATEMÁTICAS ORIENTADAS A LAS ENSEÑANZAS ACADÉMICAS CONTENIDOS
MATEMÁTICAS ORIENTADAS A LAS ENSEÑANZAS ACADÉMICAS CONTENIDOS BLOQUE 1. PROCESOS, MÉTODOS Y ACTITUDES EN MATEMÁTICAS Los contenidos de este bloque se desarrollan de forma simultánea al resto de bloques
LOS CONTENIDOS DE MATEMÁTICAS EN LOS BACHILLERATOS ITALIANOS
LOS CONTENIDOS DE MATEMÁTICAS EN LOS BACHILLERATOS ITALIANOS LOS CONTENIDOS DEL BIENIO (1º Y 2º AÑO) PROGRAMA A (PARA LOS INDERIZZOS CLÁSICO, LINGÜÍSTICO, SOCIO-PSICO-PEDAGÓGICO Y ARTÍSTICO, 4 horas semanales)
Metodología y Tecnología de la Programación. I.T. Informática de Gestión
ESCUELA POLITÉCNICA SUPERIOR DE CÓRDOBA PROGRAMAS, MÉTODOS Y CRITERIOS DE EVALUACIÓN A APLICAR DURANTE EL PROCESO DE EXTINCIÓN DEL PLAN 1999 Metodología y Tecnología de la Programación I.T. Informática
Paradigmas de Programación
Cátedra: PARADIGMAS DE PROGRAMACION Código: K9529 Carrera: INGENIERIA EN SISTEMA DE INFORMACIÓN Plan: ORD. Nº 1150 Año: 2013 Régimen: CUATRIMESTRAL Horas semanales: 8 Programa Analítico Paradigmas de Programación
Programa Oficial de Asignatura. Ficha Técnica. Presentación. Competencias y/o resultados del aprendizaje. Contenidos Didácticos
Ficha Técnica Titulación: Grado en Ingeniería Informática Plan BOE: BOE número 108 de 6 de mayo de 2015 Asignatura: Módulo: Programación y Estructura de Datos Curso: 1º Créditos ECTS: 6 Tipo de asignatura:
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,
PROGRAMACIÓN ORIENTADA POR OBJETOS EN JAVA
PROGRAMACIÓN ORIENTADA POR OBJETOS EN JAVA Introducción El paradigma de Programación Orientada a Objetos ha estado vigente desde hace muchos años en el mundo del software. A través de los años este paradigma
Divisibilidad y congruencia
Divisibilidad y congruencia Taller de Álgebra I Verano 2017 Algoritmo de la división Teorema Dados a, d Z, d 0, existen únicos q, r Z tales que a = qd + r, 0 r < d. Idea de la demostración: (caso a 0,
Temas de Programación funcional (curso )
1 Temas de Programación funcional (curso 2017 18) José A. Alonso Jiménez Grupo de Lógica Computacional Dpto. de Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla Sevilla, 5 de
Temas de Programación funcional (curso )
1 Temas de Programación funcional (curso 2018 19) José A. Alonso Jiménez Grupo de Lógica Computacional Dpto. de Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla Sevilla, 12 de
TEMA 4: Divisibilidad. Números primos. Congruencias Divisibilidad en. Números primos , 00.19, 00.65, 01.8, 02.23, 03.1, 04.
X Problemas de Oposiciones 1996-2005 b) Por temas TEMA 1: Números naturales. Sistemas de numeración Sistema de numeración decimal...00.4, 02.35, 04.16, 04.20 Otros sistemas de numeración...96.10, 98.21
Contenido. 1. Introducción a la programación La secuenciación La selección...55
Contenido - IX Contenido 1. Introducción a la programación...1 1.1 Conceptos generales...3 La computadora... 3 El programa... 6 Estructuras de datos... 6 Operaciones primitivas elementales... 7 Estructuras
TEMARIO DE PROFESORES DE ENSEÑANZA SECUNDARIA MATEMÁTICAS
HOJA INFORMATIVA A.5.2.33 TEMARIO DE PROFESORES DE ENSEÑANZA SECUNDARIA MATEMÁTICAS Publicado en el B.O.E. de 21 de Septiembre de 1.993 MARZO 1998 MATEMÁTICAS 1. Números naturales. Sistemas de numeración.
Introducción a la Programación Genérica
Introducción a la Programación Genérica Alberto Pardo Instituto de Computación Facultad de Ingeniería Universidad de la República http://www.fing.edu.uy/inco/cursos/proggen Objetivo del curso Introducción
1 Introducción a los algoritmos y a la programación de computadoras... 1
Contenido - IX Contenido 1 Introducción a los algoritmos y a la programación de computadoras... 1 1.1 Introducción... 2 1.2 Concepto de algoritmo... 2 1.2.1 Definición de algoritmo y problema... 2 1.2.2
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
Temario. Tipos de recursión. Eficiencia y recursión
RECURSION Temario Tipos de recursión Eficiencia y recursión Tipos de RECURSION Según desde donde se realice el llamado recursivo: Directa: la función se llama a sí misma. Indirecta: la función A llama
Tipos algebraicos y abstractos. Algoritmos y Estructuras de Datos I. Tipos algebraicos
Algoritmos y Estructuras de Datos I 1 cuatrimestre de 009 Departamento de Computación - FCEyN - UBA Programación funcional - clase Tipos algebraicos Tipos algebraicos y abstractos ya vimos los tipos básicos
Bloque 1. Contenidos comunes. (Total : 1 sesión)
3º E.S.O. 1.1.1 Contenidos 1.1.1.1 Bloque 1. Contenidos comunes. (Total : 1 sesión) Planificación y utilización de estrategias en la resolución de problemas, tales como el recuento exhaustivo, la inducción
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/
Tema 1: Introducción a la programación funcional
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 2 / 21 3 / 21 en Haskell En Haskell, una
18 Experimentos aleatorios. Sucesos y espacio muestral. Frecuencia y probabilidad de un suceso.
PRIMER CURSO DE E.S.O Criterios de calificación: 80% exámenes, 10% actividades, 10% actitud y trabajo 1 Números naturales. 2 Potencias de exponente natural. Raíces cuadradas exactas. 3 Divisibilidad. Concepto
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:
Construcciones del Lenguaje Java
Construcciones del Lenguaje Java Autor: Juan Alberto López Cavallotti Versión de Java: 5 / 6 Comentarios Comentario de Línea Comentario Multilínea //Esto es un comentario. /* Esto comenta varias lineas.
RESUMEN DEL CAPITULO, 27 EXAMEN DEL CAPITULO, 28 BIBLIOGRAFIA, 30 GEORGE BOOLE, 31
ÍNDICE 1 Proposiciones y conjuntos en las matemáticas 1 PROPOSICIONES ELEMENTALES Y CONJUNTOS 1-1 Proposiciones 1ógicas; conjuntos, 1 1-2 Variables y cuantificadores, 4 COMBINACION DE PROPOSICIONES Y CONJUNTOS
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
Lenguajes de Programación Programación funcional
Lenguajes de Programación Programación funcional Roberto Bonvallet Departamento de Informática Universidad Técnica Federico Santa María Concepto de función En el paradigma imperativo: Una función es una
Teoría de autómatas. Un enfoque práctico. Recortables. Thelma Cantú María Gpe. Mendoza
Teoría de autómatas. Un enfoque práctico Recortables Thelma Cantú María Gpe. Mendoza 1.1 Búsqueda de lenguajes Alumno: 1 Nombre del lenguaje Alfabeto: Dónde se utiliza? Cuál es el beneficio para la humanidad?
Tema 4.- Recursión e iteración
UNIVERSIDAD DE CÓRDOBA ESCUELA POLITÉCNICA SUPERIOR DE CÓRDOBA DEPARTAMENTO DE INFORMÁTICA Y ANÁLISIS NUMÉRICO PROGRAMACIÓN DECLARATIVA INGENIERÍA INFORMÁTICA ESPECIALIDAD DE COMPUTACIÓN CUARTO CURSO PRIMER
Expresión decimal. Aproximación y estimación. Notación científica. Polinomios. Divisibilidad de polinomios. Regla de Ruffini.
Otras páginas Matemáticas 5º Matemáticas I. Bloque I: ARITMÉTICA Y ÁLGEBRA Los números reales Los números reales, concepto y características. Estructura algebraica, orden, representación en la recta real
Tema 2: Introducción a Haskell
El Lenguaje Haskell Tema 2: Introducción a Haskell 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
Repaso Lenguaje C Área de Servicios Programación (Ing. Elect. y Prof. Tec.), Programación I (TUG y TUR) y Electrónica programable (TUE)
Repaso Lenguaje C OBJETOS Variables Constantes Variable: objeto del ambiente cuyo contenido puede cambiar. Constante: objeto cuyo contenido no puede cambiar. Variables: - un nombre que la identifica. Deben
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
ANÁLISIS DESCENDENTE. Compruébese que la siguiente gramática es LL(1) sin modificarla.
Procesadores de lenguaje Ejercicios del Tema 3 ANÁLISIS DESCENDENTE Ejercicio 3.1 Compruébese que la siguiente gramática es LL(1) sin modificarla. Ejercicio 3.2 A B C D B a C b B λ C c A d C e B f C g
Biblioteca de recursos. Descargado desde
Biblioteca de recursos Descargado desde www.rededuca.net Matemáticas 1. Números naturales. Sistemas de numeración. 2. Fundamentos y aplicaciones de la teoría de grafos. Diagramas en árbol. 3. Técnicas
