Hallo Leute!
Ich muss für eine Studienarbeit eine Konsolenanwendung erstellen die die zahl PI nach der Formel von Walles auf 1e-12 stellen genau berechnet.
( Formel Pi nach Walles: Wallissches Produkt)
Ich bekomme kein richtiges ergebniss und finde (trotz mehrstündiger suche) den fehler nicht,..
Denke ich steh da grad ziemlich auf der leitung,..
Ich habe allerdings den verdacht das der fehler irgendwo an meiner logik liegt,..
Könnte mir villeicht jemand helfen?
Code:
Ich muss für eine Studienarbeit eine Konsolenanwendung erstellen die die zahl PI nach der Formel von Walles auf 1e-12 stellen genau berechnet.
( Formel Pi nach Walles: Wallissches Produkt)
Ich bekomme kein richtiges ergebniss und finde (trotz mehrstündiger suche) den fehler nicht,..
Denke ich steh da grad ziemlich auf der leitung,..
Ich habe allerdings den verdacht das der fehler irgendwo an meiner logik liegt,..
Könnte mir villeicht jemand helfen?
Code:
Code:
class Program
{
static void Main(string[] args)
{
// Variablen Definieren
double pi0 = 1;
double pi1 = 1;
double pi2 = 1;
double piX = 1;
double piKontrollwert;
double differenzAbs;
const double DIFF_ABS_MAX = 1e-12;
int i = 1;
do
{
pi0 = piX;
piKontrollwert = piX;
pi1 = (2*i)*(2*i);
pi2 = 2*(((2*i)-1)*((2*i)+1) / pi1);
piX = pi0 * pi2;
i++;
differenzAbs = (Math.Abs(piX - piKontrollwert));
} while (differenzAbs > DIFF_ABS_MAX);
Console.WriteLine("Pi ist auf 10e-12 Stellen genau: {0}", piX);
}
}
}