Помогите, пожалуйста, по информатике! Тема: анимация в PascalABC. Программу я уже написала, только нужно её исправить и доработать.
Вот сама программа и мне нужно, чтобы дорога сверху машины была белого цвета и сама машина двигалась, не оставляя за собой "следа":
program TrafficLight;
uses GraphABC;
procedure b(x:integer);
begin
SetBrushColor(clGreen);
Rectangle(750-x,440,450-x,510);
Line(450-x,440,530-x,380);
Line(530-x,380,530-x,440);
Line(530-x,380,750-x,380);
FloodFill(500-x,410,clGreen);
FloodFill(640-x,410,clGreen);
Line(750-x,380,750-x,440);
Line(640-x,380,640-x,440);
SetBrushColor(clblack);
Circle(540-x,525,30);
Circle(670-x,525,30);
end;
begin
SetWindowSize(800,600);
Line(0,300,800,300);
SetBrushColor(clblack);
Rectangle(0,0,150,300);
SetBrushColor(clBlue);
Rectangle(10,20,60,70);
SetBrushColor(clYellow);
Rectangle(80,20,130,70);
SetBrushColor(clBlue);
Rectangle(10,90,60,140);
Rectangle(80,90,130,140);
SetBrushColor(clYellow);
Rectangle(10,160,60,210);
SetBrushColor(clBlue);
Rectangle(80,160,130,210);
Rectangle(10,230,60,280);
Rectangle(80,230,130,280);
SetBrushColor(clblack);
Rectangle(160,50,310,300);
SetBrushColor(clBlue);
Rectangle(170,70,220,120);
Rectangle(240,70,290,120);
Rectangle(170,140,220,190);
Rectangle(240,140,290,190);
Rectangle(170,210,220,260);
Rectangle(240,210,290,260);
SetBrushColor(clblack);
Rectangle(320,40,620,300);
SetBrushColor(clBlue);
Rectangle(340,60,390,110);
Rectangle(340,130,390,180);
Rectangle(340,200,390,250);
Rectangle(410,60,460,110);
SetBrushColor(clYellow);
Rectangle(410,130,460,180);
Rectangle(410,200,460,250);
SetBrushColor(clBlue);
Rectangle(480,60,530,110);
Rectangle(480,130,530,180);
Rectangle(480,200,530,250);
Rectangle(550,60,600,110);
SetBrushColor(clYellow);
Rectangle(550,130,600,180);
SetBrushColor(clBlue);
Rectangle(550,200,600,250);
SetBrushColor(clblack);
Rectangle(630,30,790,300);
SetBrushColor(clBlue);
Rectangle(650,50,700,100);
Rectangle(650,120,700,170);
Rectangle(650,190,700,240);
Rectangle(720,50,770,100);
SetBrushColor(clYellow);
Rectangle(720,120,770,170);
SetBrushColor(clBlue);
Rectangle(720,190,770,240);
SetBrushColor(clred);
Rectangle(0,460,800,470);
SetBrushColor(clbrown);
Rectangle(0,300,800,310);
SetBrushColor(clblack);
Rectangle(60,470,80,590);
Rectangle(40,320,100,470);
SetBrushColor(clred);
Circle(70,350,20);
SetBrushColor(clgray);
Circle(70,395,20);
Circle(70,440,20);
begin
for var i:=10 to 270 do
begin
b(i);
sleep(1);
end;
end;
End.
Знаю, что работа нелёгкая. Поэтому даю максимальное количество баллов. Пожалуйста!
Answers & Comments