hallo,
hab hier einen schönen ansatz zur berechnung von PI gefunden
http://www.uni-leipzig.de/~sma/pi_ei...ung/index.html
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var an,an1,yn,yn1,pi:extended;
i:integer;
begin
an:=sqrt(2)-1;
yn:=sqrt(an);
for i:=0 to 2 do begin
yn1:= (1 - Power( 1 - Power( yn , 4 ) , 0.25 ) ) / ( 1 + Power( 1 - Power( yn , 4 ), 0.25 ));
an1:= an * Power( 1 + yn1 , 4 ) - Sqrt( 2 ) * ( 1 + yn1 + sqr( yn1 ) ) * Power( 4 , i + 1 ) * yn1;
yn:=yn1;
an:=an1;
pi:=1/an;
Memo1.Lines.Add(FloatToStr(pi));
end;
Showmessage(FloatToStr(pi));
end;
mit 2 algorithmen durchläufen hab ich bereits pi auf 15 stellen hinter dem komma genau berechnet.
sicher erkennt ihr das problem ^^
ein extended ist zu kurz um weitere stellen aufzunehmen.
wer lust hat kann ja damit rumexperimentieren oder mir paar schöne ansätze posten
Gruß Jokerface