Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
30
Добавлен:
09.03.2016
Размер:
2 Кб
Скачать
program cub;
 uses graph,crt;
 const
  r=40; yo=350; x0:integer=500;
  a=105; b=200;  h=300;
 var
  graphdriver,graphmode,k     : integer;
  x1,dx,y,y1,x,dy,dy3         : integer;
  x4,x5,x6,x7,y4,y5,y6,y7,dy2 : integer;
  dx1,dy1,x2,y2,x3,y3,dx3,dx2 : integer;
  alfa,alf                : real;
  procedure line_spin(xo,i:integer;dalfa:real);
  procedure picture(col:word);
   begin
    setcolor(col);
     line(x,y,x1,y1);
     line(x2,y2,x3,y3);
     line(x4,y4,x5,y5);
     line(x6,y6,x7,y7);
     line(a,b,a,h);
     circle(xo,yo,r);
     circle(a,b,r);
   end;
   begin
   x:=xo+r; x2:=xo+r;
   y:=yo; y2:=yo;
   x1:=xo-r; x3:=xo-r;
   y1:=yo; y3:=yo;
   alfa:=0;
    repeat
   dx:=round(r*cos(alfa));
   dy:=round(r*sin(alfa));
   dx1:=round(r*cos(alfa+pi/2));
   dy1:=round(r*sin(alfa+pi/2));
     picture(white);
      delay(8000);
     picture(black);
   if k>144 then alf:=alf-dalfa;
     dx2:=round(r*cos(alf));
     dy2:=round(r*sin(alf));
     dx3:=round(r*cos(alf+pi/2));
     dy3:=round(r*sin(alf+pi/2));
     x4:=a+dx2; x5:=a-dx2; x6:=a+dx3; x7:=a-dx3;
     y4:=b-dy2; y5:=b+dy2; y6:=b-dy3; y7:=b+dy3;
   if k<=144 then
    begin
     xo:=xo-i;
     x:=xo+dx; x1:=xo-dx; x2:=xo+dx1; x3:=xo-dx1;
     y:=yo-dy; y1:=yo+dy; y2:=yo-dy1; y3:=yo+dy1;
    end;
   alfa:=alfa+dalfa;
   k:=k+1;
   until keypressed;
   end;
  begin
   graphdriver:=detect;
    clrscr;
   initgraph(graphdriver,graphmode,'c:\tp70\bgi');
      setbkcolor(black);
       rectangle(170,300,40,400);
    line_spin(500,2,pi/72);
 closegraph;
end.
Соседние файлы в папке graph