Sèrie sinusoidal

Definim una sèrie sinusoidal de la forma següent:

\[\begin{split}\begin{array}{l} x_0 = 1 \\ x_{i+1} = 2 \sin x_i+ 3 \cos x_i, i>=0 \end{array}\end{split}\]
  1. Dissenya una funció que donat un enter k, calculi la suma dels elements de la sèrie anterior fins al terme k, és a dir, x0+x1+…+xk

    Desa la funció al fitxer sinusoidal.py. La funció ha de passar el següent doctest:

    >>> round(sinusoidal_1(9), 2)
    -19.02
    >>> round(sinusoidal_1(10),2)
    -21.44
    

    Nota

    Podeu descarregar el fitxer amb tests sinusoidal1.txt

  2. Dissenya una funció que donat un valor real v i una tolerància epsilon, retorni quants termes cal sumar de la sèrie anterior per obtenir el valor v amb una tolerància epsilon. Recorda que per determinar la igualtat entre dos nombres reals s’ha de comparar si la diferència en valor absolut és inferior a epsilon.

    Desa la funció al fitxer sinusoidal.py. La funció ha de passar el següent doctest:

    >>> sinusoidal_2(-21.43752,0.0001)
    11
    

    Nota

    Podeu descarregar el fitxer amb tests sinusoidal2.txt

Solució

Disposeu de solucions al fitxer sinusoidal.py