Noticias (11 de abril de 2019)
Como ya se ha comentado en clase, La quinta prueba de evaluación alternativa se adelanta del día 7 de mayo al 2 de mayo (jueves).
Horario de tutorías del 2º cuatrimestre
Solicitar por email
Martes y jueves, de 8:30 a 11:30 h.
Haskell / Emacs
Lista de funciones elementales de Haskell
Resumen de instrucciones útiles para utilizar el editor Emacs
Instalación de la librería QuickCheck
- Abrir un terminal
- Escribir: cabal update
- Escribir: cabal install QuickCheck
Si da fallo porque cabal no está instalado, entonces:
- Escribir en el terminal: cabal install cabal-install
- Escribir: cabal install QuickCheck
Instalación de la librería Data.Vector
- Abrir un terminal
- Escribir: cabal update
- Escribir: cabal install Vector
Instalación de la librería Data.Matrix
- Abrir un terminal
- Escribir: cabal update
- Escribir: cabal install Matrix
Posibles problemas con Emacs/Haskell
Error al cargar el fichero "Spawning child process":
- Paso 1. Ir a Inicio > Todos los Programas > Accesorios > Simbolo del sistema
- Paso 2. Escribir set Shell=
- Paso 3. Cerrar y volver a ejecutar emacs.
Error al cargar el fichero "Process haskell finished":
- Evitar usar ficheros que estén dentro de carpetas o subcarpetas que contengan caracteres no ASCII: "ñ", "º", tildes, espacios....
Diferencia entre las funciones rem y mod
Limitar el tamaño de las pruebas con quickCheck
Para ello, escribir: quickCheckWith (stdArgs (maxSize = n)) prop_funcion,
donde n sera el valor máximo de argumentos que generará quickCheck y prop_función será la propiedad a comprobar
Visualizar los ejemplos generados por quickCheck
Tendrás que utilizar la instrucción verboseCheck en lugar de quickCheck
También puedes combinar las dos posibilidades usando verboseCheckWith
Relaciones de Ejercicios
Relación 1. Tema
2. Definición de funciones por composición.
Relación 2. Tema 4. Definición de funciones con condicionales, guardas y patrones. Incluimos los tipos de las funciones y algunas comprobaciones con QuickCheck.
Relación 3. Tema 5. Definición de funciones por comprensión. En los ejercicios 17 y 30 usaremos las funciones read y show.
Relación 4. Tema 5. Comprensión
Relación 4. Tema 5. Comprensión con caracteres. Funciones de la librería Data.Char.
Relación 5.1 Temas 5 y 6. Recursión/Comprensión.
Relación 5.2 Temas 5 y 6. Recursión/Comprensión.
Relación 5.3 Tema 6. Recursión.
Relación 6 Recopilación de ejercicios del primer examen de otros grupos.
Relación 7 Tema 7. Orden Superior.Plegado.
Relación 8 Tema 7. Orden Superior.Plegado.
Relación 9 Tema 7.Recursión, Acumuladores y Plegados foldr y foldl.
Relación 10 Tema 9. Tipos de datos: listas.
Relación 11 Tema 9. Arboles.
Relación 12 Tema 9. Tipos de
datos algebraicos.
Relación 13 Tema 10. Evaluación Perezosa y listas infinitas.
Relación 14 Tema 10. Evaluación Perezosa y listas infinitas. Usamos la librería de los números primos. Puedes ver su manual aquí. Para instalarla, basta abrir un terminal y escribir: cabal install Primes
Estudia la librería Data.List . Muchas de sus funciones pueden servirte para mejorar tus soluciones. Puedes ver su manual aquí , o bien aquí..
Tema 13. Cómo hacer que una función solicite los datos de entrada por el teclado, ejemplo de interacción
Código del tema de programación interactiva para verlo funcionando.
Relación 15 Tema 13. Programación interactiva.
Relación 16 Tema 18. Matrices.
Relación 17 Tema 18.
Matrices. Método de Gauss.
Relación 18 Tema 18.Método de Gauss. Vectores y Matrices con las librerías Data.Vector y Data.Matrix.
Relación 19 Relación de ejercicios de examen sobre vectores y matrices.
Relación 20 Ejercicios sobre relaciones binarias.
Relación 21 Ejercicios de la relación 20 de relaciones binarias, resueltos con la librería Data.Set que puedes consultar en este documento creado por el prof. Jose A. Alonso.
Relación 22 Cálculo numérico: Diferenciación y métodos de Herón y de Newton.
Práctica 23 Combinatoria.
Práctica 24 Estadística descriptiva.
Práctica 25 Ecuación con factoriales.
En adelante necesitarás la información sobre los TAD's que aparece Aquí
Práctica 26 Tema 14. TAD: Pilas
Práctica 27 Tema 15. TAD: Colas.
Práctica 28 Tema 30.
Práctica 29 Tema 30.
Práctica 30 Tema 17 TAD: Conjuntos.
Práctica 31 Tema 21. El TAD de los polinomios.
Práctica 32 Tema 21. El TAD de los polinomios.
Práctica 33 Tema 21. División y factorización de polinomios mediante la regla de Ruffini.
Práctica 34 Tema 22. Ejercicios del TAD de los grafos.
Práctica 35 Tema
22. Implementación de los grafos mediante listas.
Práctica 36 Tema 22. Más ejercicios sobre grafos.
Práctica 37 Tema 23. Divide y vencerás: el problema del Triominó.
Para las prácticas de Búsqueda en espacios de estados, necesitarás importar este Fichero y tener PilaConListas en la misma ubicación.
Práctica 38 Tema 23. Espacios de estados. El problema del granjero.
Práctica 39 Tema 23. Espacio de estados. Dominó y el problema de las Jarras.
Práctica 40 Tema 23. Espacios de estados. Calendario deportivo.
Práctica 41 Tema 23. Búsqueda por primero el mejor. Grupo 2.
Práctica 42 Tema 23. Búsqueda en escalada Grupo 2 .
Práctica 43 Tema 23 Más ejercicios de búsquedas.
Práctica 44 Ejercicios complementarios.
Práctica 45 Sobre los números de Lychrel.
Práctica 46 Ejercicios variados.
Práctica 47 Enumeración de los números Racionales.
Práctica 48 Ejercicios de examen para repasar.
Pruebas de evaluación alternativa del Grupo 1
Primera prueba. Aquí una solución.
Segunda prueba. Aquí una solución.
Tercera prueba. Aquí una solución.
Cuarta prueba. Aquí una solución.
Quinta prueba. Aquí una solución.
|