Aproximación del número pi
Una forma de aproximar el número π es usando la siguiente igualdad: \[ \frac{\pi}{2} = 1 + \frac{1}{3} + \frac{1 \cdot 2}{3 \cdot 5} + \frac{1 \cdot 2 \cdot 3}{3 \cdot 5 \cdot 7} + \frac{1 \cdot 2 \cdot 3 \cdot 4}{3 \cdot 5 \cdot 7 \cdot 9} + \cdots \] Es decir, la serie cuyo término general n-ésimo es el cociente entre el producto de los primeros n números y los primeros n números impares: \[s(n) = \frac{\prod_{i=1}^{n} i}{\prod_{i=1}^{n} (2i + 1)}\]
Definir la función
aproximaPi :: Double -> Double
tal que (aproximaPi n) es la aproximación del número π calculada con la serie anterior hasta el término n-ésimo. Por ejemplo,
aproximaPi 10 == 3.141106021601377 aproximaPi 30 == 3.1415926533011587 aproximaPi 50 == 3.1415926535897922
Soluciones
aproximaPi :: Double -> Double aproximaPi n = 2*(sum [product [1..m] / product [2*i+1 | i <- [1..m]] | m <- [0..n] ])