I1M2017: Cálculo numérico en Haskell (2º parte)

En la segunda parte de la clase de hoy de Informática de 1º del Grado en Matemáticas se han explicado las soluciones de los ejercicios de la relación 27, en la que se definen funciones para resolver los siguientes problemas de cálculo numérico:

  • Cálculo de límites.
  • Cálculo de los ceros de una función por el método de la bisección.
  • Cálculo de raíces enteras.
  • Cálculo de integrales por el método de los rectángulos.
  • Algoritmo de bajada para resolver un sistema triangular inferior.

Los ejercicios, y sus soluciones, se muestran a continuación.
Read More “I1M2017: Cálculo numérico en Haskell (2º parte)”

I1M2017: Análisis de la complejidad de los algoritmos

En la primera parte de la clase hoy de Informática de 1º del Grado en Matemáticas se ha explicado el tema de análisis de la complejidad de los algoritmos.

Se empezó explicando la notación de Landau y los órdenes de complejidad. A continuación se presentaron varios ejemplos de definiciones de distintos órdenes. En cada ejemplo, se especificó el problema, se definió la función, se hizo una tabla sobre la variación de los tiempos y su correspondiente gráfica, se extrajeron las ecuaciones en recurrencia, se resolvieron con Wolfram Alpha y se demostró por inducción el orden de la definición.

Como resumen, en la siguiente tabla se muestra los ejemplos presentados

Los apuntes correspondientes a la clase son

I1M2017: De la matemática a la máquina

En la segunda parte de la clase de hoy del curso de Informática de 1º del Grado en Matemáticas se ha comentado cómo los se pueden representar los conceptos matemáticos en los ordenadores.

Para ello se ha visto cómo la definición de factorial se puede definir en distintos paradigmas desde la matemática al código máquina. Las definiciones consideradas han sido

  • En matemáticas
  • En programación funcional (Haskell).
  • En programación imperativa (C).
  • En ensamblador.
  • En código máquina.

La exposición se ha basado en el artículo From math to machine: translating a function to machine code de Brian Steffens.

I1M2017: Introducción a la programación con Maxima

En la primera parte de la clase de hoy del curso de Informática de 1º del Grado en Matemáticas se ha presentado una introducción a la programación con Maxima.

En la presentación se ha seguido el siguiente guión:

  1. Maxima como calculadora
  2. Variables y asignaciones
  3. Bloques de instrucciones
  4. Definición de funciones
  5. Escritura y lectura
  6. La estructura condicional: condicionales simples y múltiple.
  7. Estructuras iterativas: bucles mientras, hasta y para.
  8. Recursión

Finalmente, se ha comentado

Los apuntes correspondientes a la clase son