I1M2016: Las librerías de vectores y matrices

En la clase de hoy de Informática de 1º del Grado en Matemáticas hemos comentado cómo se puede trabajar eh Haskell con vectores y matrices usando las librerías Data.Vector y Data.Matrix.

Para instalarla con Cabal hay que ejecutar las siguientes órdenes

Los correspondientes manuales, con ejemplos de las funciones, se encuentran en

I1M2016: Matrices en Haskell

En la clase de hoy del curso de Informática de 1º del Grado en Matemáticas se ha estudiado cómo trabajar con tablas en Haskell usando el módulo Data.Array.

En la primera parte se ha explicado El tipo predefinido de las tablas (“arrays”) se han estudiado las funciones sobre índices (range, index, inRange, rangeSize) y sobre tablas (array, (!), bounds, indices, elems, assocs, (//), listArray y accumArray). También se han estudiado ejemplos de definiciones con dichas funciones.

En la segunda parte se han comentado las soluciones de los siguientes ejercicios de la Relación 15:

Read More “I1M2016: Matrices en Haskell”

I1M2016: Programas interactivos en Haskell

En la clase de hoy de Informática de 1º del Grado en Matemáticas se ha estudiado el tema 13 sobre programas interactivos.

Se ha empezado observando un procedimiento que pide que se escriba una cadena y devuelve su longitud:

A continuación se han estudiado los elementos implicados en el procedimiento anterior: el tipo de las acciones de entrada/salida (IO), las acciones básicas (getChar, putChar y return), la secuenciación de acciones con do y la definición de algunos procedimientos del preludio (getLine, putStr, putStrLn, y sequence_).

Como aplicación se han estudiado un programa para adivinar un número en sus dos versiones: cuando la máquina tiene que adivinar el número pensado por el humano y cuando es el humano el que tiene que adivinar el número generado aleatoriamente por la máquina.

Los apuntes correspondientes a la clase son