Einzelnen Beitrag anzeigen

neolithos

Registriert seit: 31. Jul 2003
Ort: Dresden
1.386 Beiträge
 
Delphi 7 Architect
 
#5

Re: HILFE!! Pi-Berechnung - "unendliche reihe"

  Alt 18. Mär 2004, 20:14
Achtung C:

Code:
// pi/4= 1-1/3+1/5-1/7+1/9-1/11 

#include "stdio.h"

void main()
{
   printf("Calculate Pi...\n");

   double fQPi = 1;
   unsigned int iStep = 0;
   double fDiv = 3;
   double fOldPi = 0;
   double fPi = 1;

   while (fOldPi != fPi) // <-- hier 1
   {
      fOldPi = fPi;

      // Berechne Viertel Pi
      if (iStep % 2 == 1)
         fQPi += 1.L / fDiv;
      else
         fQPi -= 1.L / fDiv;
      fPi = fQPi * 4;

      // Nächster Schritt
      fDiv += 2;
      iStep += 1;

      // Text
      if (iStep % 10000000 == 0)
         printf("%12.0d - %12.0f - Pi ist %18.15f\n", iStep, fDiv, fPi);
   }
}

Diese Idee gibt zwar schöne Werte aus. Führt aber anscheinend in endlicher Zeit nicht zum Ende.

Erkenntnis:

15 Stellen Genauigkeit sind in endlicher Zeit nicht zu schaffen.

Achtung: Diese Schleife wird höchst wahrscheinlich kein Ende nehmen.

Zu 1, dort müsste ein Round hin um eine gültige Abbruchbedingung zu erhalten. Maximal 8-10 Nachkommastellen.

@LilKriztina:

Übrignes ich habe C gewählt damit du auch ein wenig grübeln darfst. Ich will ja nicht die Ausaufgaben Prühwarm servieren. Obwohl es fast schon so ist.
- ciao neo -
Es gibt niemals dumme Fragen, sondern nur dumme Antworten!
  Mit Zitat antworten Zitat