Leibniz formule pour le π - Est-ce bon? (Python)

Je suis en train de faire un exercice qui demande une fonction qui se rapproche de la valeur de pi à l'aide de Leibniz formule. Voici les explications sur Wikipedia:

Leibniz formule pour le π - Est-ce bon? (Python)

Leibniz formule pour le π - Est-ce bon? (Python)

La pensée logique vient à moi facilement, mais je n'ai pas eu beaucoup de une formation dans les maths, donc je suis un peu perdu quant à ce que le plus à gauche des symboles dans le second représentent. J'ai essayé de rendre le code pi = ( (-1)**n /(2*n + 1) ) * 4, mais qui a renvoyé 1.9999990000005e-06 au lieu de 3.14159..., j'ai donc utilisé un accumulateur motif de la place (depuis le chapitre du guide que c'était dans les mentionne aussi) et il a bien fonctionné. Cependant, je ne peux m'empêcher de penser que c'est un peu artificiel et il y a sans doute une meilleure façon de le faire, compte tenu de Python accent sur la simplicité et de faire des programmes aussi court que possible. C'est le code complet:

def myPi(n):
    denominator = 1
    addto = 1

    for i in range(n):
        denominator = denominator + 2
        addto = addto - (1/denominator)
        denominator = denominator + 2
        addto = addto + (1/denominator)

    pi = addto * 4

    return(pi)

print(myPi(1000000))

Personne ne sait mieux fonctionner?

  • Que représente - calculer la somme de la joint expression pour n = 0 à l'Infini
  • Merci pour l'info!
  • Vous verrez que le plus gros problème n'est pas l'algorithme.
  • Ouais, les nombres à virgule flottante m'ont donné plus d'un mal de tête depuis que je suis en ce.
InformationsquelleAutor reggaelizard | 2013-08-03