p12_8.PAS

{* Пульсирующий эллипс *}

Unit P12_8;
Interface
Implementation
Begin
 writeln('Пульсирующий эллипс (увеличивается и уменьшается)');
End.

{pulsiruyushii ellipse}
Program p12_8;

Uses p12_8.pas; {* Эту строку можно удалить *}
Uses graph, crt; {* Подключаем внешние файлы *}
Var {* Необходимые переменные *}
  d : integer;
  m : integer;
  a : integer;
  b : integer;
Begin
  D := detect;
  Initgraph (d, m, 'c:langtpbgi');
  a := 150;
  b := 150;
  delay(1000);
  setcolor(14);
  ellipse(320, 240, 0, 360, a, b);
  Repeat    Repeat   setcolor(0);
    ellipse(320, 240, 0, 360, a, b);
  setfillstyle(1, 0);
  floodfill(320, 240, 0);
  dec(b); {* b-- *}
  dec(a); {* a-- *}
  setcolor(14);
  ellipse(320, 240, 0, 360, a, b);
  setfillstyle(1, 14);
  floodfill(320, 240, 14);
  delay(15);
  Until (b = 5);
  Repeat   setcolor(0);
    ellipse(320, 240, 0, 360, a, b);
  setfillstyle(1, 0);
  floodfill(320, 240, 0);
  Inc(b); {* Увеличиваем b на 1 *}
  Inc(a); {* Увеличиваем a на 1 *}
  setcolor(14);
  ellipse(320, 240, 0, 360, a, b);
  setfillstyle(1, 14);
  floodfill(320, 240, 14);
  delay(15);
  Until (b = 150);
  Until keypressed; {* Цикл, пока не нажата клавиша *}
  readln; {* Ждем нажатия Enter *}
End.