Seite 1 von 1

Reihenentwicklung

Verfasst: 06.06.2022 16:36
von Tirreg
Hallo,
vielleicht ist das hier in der falschen Kategorie.
Vielleicht gibt es hier einen Mathematiker der beantworten kann, warum die Reihenentwicklung bei der 7. Nachkommastelle (und nur da!) einen Fehler macht?

Vielen Dank!

Code: Alles auswählen

                                    ; Berechnung der Zahl Pi
Anzahl = 1e7                        ; Anzahl Durchläufe, 1e8 bringt 1 Stelle mehr, dauert aber fast 30s

m = 1
a = 1

For i = 1 To Anzahl                 ; 1 - 1/3 + 1/5 - 1/7 + 1/9 - ... = Pi/4
  c.d = a * 1 / m
  p.d = p + c
  a = a * -1
  m = m + 2
Next

pi.d = p * 4                        ; Fehler auf der 7. Stelle !!!

Debug "Reihenentwicklung:"
Debug pi: Debug 3.1415926535897931 -pi: Debug ""  ; Differenz Reihenentwicklung - 2*ASin(1)

                                    ; 3.1415925535897915  nur auf 7 Nachkommastellen genau   ???
                                    ; kopiert aus Internet:  3.14159265358979323846

Debug "ATan(1) * 4"
Debug ATan(1) * 4: Debug ""         ; 3.1415926535897931   genau und schnell!

Debug "2 * ASin(1)"
Debug 2* ASin(1): Debug ""          ; 3.1415926535897931   genau und schnell!

Debug "4 * ATan(1/5) - ATan(1/239)) * 4"
Debug (4 * ATan(1/5) - ATan(1/239)) * 4   ; 3.1415926535897936   etwas weniger genau
Debug ""

Debug "kopiert aus Internet, 16 Nachkommastellen:"
Debug "3.1415926535897932"                ; gerundet auf 16 Stellen

Re: Reihenentwicklung

Verfasst: 06.06.2022 16:58
von STARGÅTE
Das liegt daran, dass diese Reihe ganz fürchterlich schlecht konvergiert und dann auch noch alternierend ist.
Wie du selber geschrieben hast brauchst du sehr viele Iterationen (ganz grob 10^n für n Stellen), weil mit jeder Iteration immer nur 1/2n hinzu addiert ober abgezogen wird. Deswegen ist die 7. Nachkommastelle falsch wenn du nur 1e7 nimmst.
Das die stellen Danach stimmen, ist mehr oder weniger Zufall.

Re: Reihenentwicklung

Verfasst: 06.06.2022 17:25
von Tirreg
Danke!