Autor Tema: Ayuda python

0 Usuarios y 1 Visitante están viendo este tema.

26 Agosto, 2019, 12:22 pm
Leído 1295 veces

Erika Lozano

  • $$\Large \color{red}\pi$$
  • Mensajes: 4
  • Karma: +0/-0
  • Sexo: Femenino
Como puedo programar esta sumatoria para valores grandes de N en python

\( \displaystyle\sum_{n=1}^{\infty}\dfrac{6}{(2n-1)(2n+1)} \)


26 Agosto, 2019, 01:10 pm
Respuesta #1

feriva

  • $$\Large \color{red}\pi\,\pi\,\pi\,\pi\,\pi\,\pi\,\pi$$
  • Mensajes: 9,298
  • País: es
  • Karma: +1/-0
  • Sexo: Masculino
Como puedo programar esta sumatoria para valores grandes de N en python

\( \displaystyle\sum_{n=1}^{\infty}\dfrac{6}{(2n-1)(2n+1)} \)



Hola.

Supongo que te dan problema los decimales con el float. Entonces Importa "Decimal" con esta instrucción:  from decimal import *

Y debajo pon la precisión que necesites en cuanto a cantidad de cifras con este comando

getcontext().prec = 100  (pongo 100 pero puedes poner muchas más).

La salida se la tienes que pedir así Decimal (variable que sea)

Saludos.

26 Agosto, 2019, 03:30 pm
Respuesta #2

ingmarov

  • Moderador Global
  • Mensajes: 4,934
  • País: hn
  • Karma: +0/-0
  • Sexo: Masculino
Hola

El resultado de esa suma es 3. Es una serie telescópica como mencionamos en,

http://rinconmatematico.com/foros/index.php?topic=110222.msg435622#msg435622

¿Qué es N grande?


Yo programaría algo como

suma=0
for i in range(1,10001):
    a=6/((2*i-1)*(2*i(1))
    suma=suma+a

print(suma)


N=10000

Saludos


Como menciona Feriva, será necesario modificar la precisión aumentando la cantidad de decimales.
No te confíes, revisa lo que escribo. Yo también me equivoco.
Odio el autocorrector de Android...