Нарисовать падающие снежинки- Pascal(Паскаль)

uses crt,graph;
type mas=array[1..500] of Pointtype;
var gd,gm,i,j,k,n:integer;
    a:mas;
begin
randomize;
gd:=0;
initgraph(gd,gm,'');
{рисуем массив снежинок, можно и пикселями}
for i:=1 to 500 do
 begin
  a[i].x:=random(getmaxX);
  a[i].y:=random(getmaxY);
  circle(a[i].x,a[i].y,1);
 end;
k:=0;n:=0;
repeat
k:=k+1;
delay(200);{задержка}
setcolor(0);{рисуем его цветом фона-стираем}
for i:=1 to 500 do
circle(a[i].x,a[i].y,1);
{сдвигаем все точки по оси Х-наклон и оси У-вниз}
for i:=1 to 500 do
 begin
  if a[i].y>getmaxY-n-10 then a[i].y:=1
  else a[i].y:=a[i].y+3;
  if a[i].x<0 then a[i].x:=getmaxX
  else a[i].x:=a[i].x-1;
 end;
setcolor(15);{снова рисуем белым цветом}
for i:=1 to 500 do
circle(a[i].x,a[i].y,1);
{внизу рисуем выпавший снег линиями}
if k mod 20=0 then
 begin
  n:=n+1;
  line(0,getmaxY-n,getmaxX,getmaxY-n);
 end;
until keypressed;{повторяем до нажатия любой клавиши}
readln
end.

Leave a Comment

− 6 = 4