Witam,
jestem początkujący w Pascalu, używam wersji Borlanda 7.0 i natrafiłem na problem z grafiką... Mam procedurę, która wyświetla obiekt i chciałbym tą procedurę wykonać kilka razy. Używam do tego oczywiście pętli FOR ale wychodzą mi przedziwne rzeczy... Gdy pętlę wykonuję 3 razy to obraz pokazuje się niekiedy jeden raz a niekiedy trzy razy. Gdy wykonuję pętlę z procedurą 50 razy - to obraz pokazuję się zaledwie kilka razy i na dodatek układa się w określonym schemacie a jego połorzenie X i Y jest losowe!
Nie mam pojęcia jak wyświetlać w losowym miejscu grafikę, za pomocą procedury, powiedzmy: 15 razy. Celem mojego programu jest wyświetlenie na ekranie 15 kwadracików w losowych (X,Y). Oto kod:
program telewizor;
uses crt, graph;
var driver,mode,x,y,a,b,i,n: integer;
procedure kwadracik(x,y:integer);
begin
Rectangle(x,y,x+20,y+20);
SetFillStyle(1,red);
Bar(x+1,y+1,x+7,y+18);
SetFillStyle(1,green);
Bar(x+8,y+1,x+13,y+18);
SetFillStyle(1,blue);
Bar(x+14,y+1,x+19,y+18);
end;
BEGIN
clrscr;
{ max a: 639 }
{ max b: 479 }
driver:=DETECT;
InitGraph(driver,mode,'C:\BGI');
for i:=1 to 50 do
begin
Randomize;
n:=Random(21)-1;
for i:=1 to n do
a:=a+30;
Randomize;
n:=Random(16)-1;
for i:=1 to n do
b:=b+30;
kwadracik(a,b);
end;
readkey;
ClearViewPort;
CloseGraph;
END.