pi berechnen



  • Hallo.

    Ich habe gestern in C++ ein Programm geschrieben, das pi annähert (http://en.wikipedia.org/wiki/Gauss-Legendre_algorithm)
    Dabei verwende ich GMP.
    Nunja, dort gebe ich die Anzahl der Bits ein, wie groß die Variable sein soll und die Iterationen, sprich die Anzahl der Wiederholungen, wie oft in die Formel eingesetzt wird..

    Nun wenn ich nun z.B. 500 Iterationen eingebe, wie viele Nachkommastellen werden sich bei höherer Genauigkeit sicherlich nicht mehr ändern? Das habe ich noch nicht wirklich verstanden..

    Und noch etwas.. Bei GMP gibt man ja ein, wie groß die Variable ist, in Bit..
    Kann ich jetzt sagen wenn ich z.B. 10000 Bit eingebe, dass dann 1250 Stellen sind (10000 Bit / 8 = 1250 Byte) ?

    MfG
    Philipp



  • The algorithm has second-order convergent nature, which essentially means that the number of correct digits doubles with each step of the algorithm.

    Such dir einen Beweis für diese Aussage, dann weißt du auch wie man die Konvergenzrate für gegebene Parameter abschätzen kann. Noch ein Tipp: schau mehrere Beweise durch, es kann gut sein, dass diese sehr großgzügig abschätzen, wenn dadurch der Beweis einfacher wird.

    Ich kann in dem Artikel das Wort Bit jedoch nicht finden, keine Ahnung was du meinst.



  • mit einem bit kannst du im dezimalsystem log[10]{2} =(ca) 0.301 stellen speichern
    mit 8 bit = 1 Byte kannst du schon 2(.408) dezimalstellen speichern.
    Mit 10000 Bit wären das 3010 stellen.



  • So, wenn es jemanden interessiert hier das Programm
    http://sourceforge.net/projects/mypi
    Sollte jemand Bugs finden, bzw. Verbesserungsvorschläge haben -> bitte her damit

    MfG
    Philipp


Anmelden zum Antworten