OK es klappt, Pi ist zwar relativ ungenau, aber das hat die monte carlo methode so ansich!
Aber kann mir vl jemand erklären, warum ich soviel rumprobieren musste, damit das ganze quadrat zu sehen ist?
Code:
procedure TForm1.Button1Click(Sender: TObject);
var i, count,x,y : integer;
pi : real;
begin
count := 0;
for i := 1 to 100000 do
begin
x:= random(200);
y:= random(200);
if (sqrt(x*x+y*y) < paintbox1.width) then
begin
count := count +1;
paintbox1.canvas.pixels[x,y] := clred;
end
else
paintbox1.canvas.pixels[x,y] := clgreen;
end;
pi := (4*count/100000);
Label1.caption:= floattostr(pi);