Soyez le premier à donner votre avis sur cette source.
Snippet vu 7 633 fois - Téléchargée 19 fois
Sub Main() ' Algorithme basé sur une série d'Euler Console.Out.WriteLine("Approximation de pi basée sur une série d'Euler") Dim cApproximation As Decimal, cPrecision As UShort, cProduits() As Decimal Console.Out.WriteLine("Précision requise ?") : cPrecision = Console.In.ReadLine ReDim cProduits(0 To cPrecision) ' Tableau de produits For i As UInteger = 1 To cPrecision ' Balayage des produits Dim cA As Decimal = 1, cB As Decimal = 1 ' Initialisation des facteurs du produit courrant For a As UInteger = 1 To i cA *= a ' Calcul du premier facteur (numérateur) Next a For b As UInteger = 3 To (i * 2) + 1 Step 2 cB *= b ' Calcul du second factuer (dénominateur) Next b cProduits(i) = cA / cB ' Calcul du produit (division des facteurs) Next i For j As UInteger = 1 To cPrecision cApproximation += cProduits(j) ' Somme cumulée de tous les produits Next cApproximation *= 2 ' Facteur commun (constant : 2) Dim cChaine As String = cApproximation.ToString cChaine = "3" & Mid(cChaine, 2, cChaine.Length - 1) ' Transformation du premier digit (constant : 3) Console.Out.WriteLine("Approximation de pi sur " & cPrecision & " facteurs : " & cChaine) Console.In.ReadLine() End Sub
14 oct. 2009 à 13:33
14 oct. 2009 à 09:46
Pi = 4(1 - 1/3 + 1/5 - 1/7 + 1/9 - 1/11 + 1/13 - 1/15 ...)
Juste pour la culture générale ... série de Gregory-Leibniz (ou formule de Leibniz) :
http://en.wikipedia.org/wiki/Leibniz_formula_for_pi (que en anglais, la version française n'a pas encore été écrite il semblerait)
Cordialement, Bacterius !
27 sept. 2009 à 22:52
Merci pour ces infos, si j'ai le temps j'implémenterai d'autres algorithmes de calcul de pi (le simplissime algorithme utilisant la méthode de Monte-Carlo), peut-être que vous m'apprendrez encore autre chose en math !
27 sept. 2009 à 21:32
i=1 plutôt que i=0 sinon, c'est nikel :)
27 sept. 2009 à 16:44
Donc, si j'ai bien compris, cette approximation de Pi s'écrirait comme ceci ?
http://img132.imageshack.us/img132/1064/sommationdeuler.png
(J'ai fait ça avec paint, LaTeX est trop long à télécharger !!)
Merci encore !
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.