Delphi-Quellcode:
function pi: real;
const
anzproben = 1000;
var
x,y: real;
i,treffer: integer;
begin
treffer := 0;
for i:= 1 to anzproben do begin
x := random; // ermitteln des Zufallspunktes
y := random;
if (x*x)+(y*y) < 1 then
inc(treffer);
end;
result := 4*treffer/anzproben
end;
Durch Veränderung von Anzproben kann die Genauigkeit geändert werden.
Code ist nicht geprüft, sollte aber funktionieren.
Anm: die if Bedingung ist der Pythagoras-Satz.