Límites de sucesiones

Definir la función

tal que limite f a es el valor de f en el primer término x tal que, para todo y entre x+1 y x+100, el valor absoluto de la diferencia entre f(y) y f(x) es menor que a. Por ejemplo,

Soluciones

A continuación se muestran las soluciones en Haskell y las soluciones en Python.


Soluciones en Haskell


Soluciones en Python

Funciones inversas por el método de Newton

Definir, usando puntoCero, la función

tal que inversa g x es el valor de la inversa de g en x. Por ejemplo,

Definir, usando inversa, las funciones raizCuadrada, raizCubica, arcoseno y arcocoseno que calculen la raíz cuadrada, la raíz cúbica, el arco seno y el arco coseno, respectivamente. Por ejemplo,

Soluciones

A continuación se muestran las soluciones en Haskell y las soluciones en Python.


Soluciones en Haskell


Soluciones en Python

Método de Newton para calcular raíces

Los ceros de una función pueden calcularse mediante el método de Newton basándose en las siguientes propiedades:

  • Si \(b\) es una aproximación para el punto cero de \(f\), entonces
    \[ b-\frac{f(b)}{f'(b)} \]
    donde \(f’\) es la derivada de \(f\), es una mejor aproximación.
  • el límite de la sucesión \(x_n\) definida por
    \begin{align}
    x_0 &= 1 \\
    x_{n+1} &= x_n-\frac{f(x_n)}{f'(x_n)}
    \end{align}
    es un cero de \(f\).

Definir la función

tal que puntoCero f es un cero de la función f calculado usando la propiedad anterior. Por ejemplo,

Soluciones

A continuación se muestran las soluciones en Haskell y las soluciones en Python.


Soluciones en Haskell


Soluciones en Python

Método de Herón para calcular la raíz cuadrada

El método de Herón para calcular la raíz cuadrada de un número se basa en las siguientes propiedades:

  • Si \(y\) es una aproximación de la raíz cuadrada de \(x\), entonces
    \[\frac{y+\frac{x}{y}}{2}\] es una aproximación mejor.
  • El límite de la sucesión definida por
    \begin{align}
    x_{0} &= 1 \\
    x_{n+1} &= \frac{x_n+\frac{x}{x_n}}{2}
    \end{align}
    es la raíz cuadrada de x.

Definir la función

tal que raiz x es la raíz cuadrada de x calculada usando la propiedad anterior con una aproximación de 0.00001 y tomando como valor inicial 1. Por ejemplo,

Soluciones

A continuación se muestran las soluciones en Haskell y las soluciones en Python.


Soluciones en Haskell


Soluciones en Python

Camino de máxima suma en una matriz

Los caminos desde el extremo superior izquierdo (posición (1,1)) hasta el extremo inferior derecho (posición (3,4)) en la matriz

moviéndose en cada paso una casilla hacia la derecha o hacia abajo, son los siguientes:

La suma de los caminos son 37, 38, 39, 40, 34, 35, 36, 40, 41 y 32, respectivamente. El camino de máxima suma es el penúltimo (1, 7, 12, 8, 4, 9) que tiene una suma de 41.

Definir la función

tal que caminoMaxSuma m es un camino de máxima suma en la matriz m desde el extremo superior izquierdo hasta el extremo inferior derecho, moviéndose en cada paso una casilla hacia abajo o hacia la derecha. Por ejemplo,

Soluciones

A continuación se muestran las soluciones en Haskell y las soluciones en Python.


Soluciones en Haskell


Soluciones en Python