4056

Принцип наследования. Создание иерархии классов. Классы и модули

Лабораторная работа

Информатика, кибернетика и программирование

Принцип наследования. Создание иерархии классов. Классы и модули. Задание: Создать иерархию графических классов в соответствии с рисунком. Описания классов оформить в отдельном модуле. Для создания данной программы, нам нужно обязательно созда...

Русский

2012-11-12

46.5 KB

61 чел.

Принцип наследования. Создание иерархии классов. Классы и модули.

Задание:

Создать иерархию графических классов в соответствии с рисунком. Описания классов оформить в отдельном модуле.

Для  создания данной программы, нам нужно обязательно создать для каждого рисунка иерархию графических классов.

Текст программы:

Unit labs3;

Interface

TYPE

    tLocation=object {создание типа фигуры}{класс TLocation}

       x,y,x1,y1:integer; {описание переменных координат}

       procedure Init(InitX,InitY:integer); {процедура инициализации}

    end;

    tPoint=object(tLocation) {описание объекта}{ класс tPoint}

       color:word; {цвет}

       procedure Init(InitX,InitY:integer;col:word);

       procedure Move(NewX,NewY:integer); {процедура движения фигур}

      { procedure Hide;}

       Procedure Draw; {процедура рисования}

    end;

    tCircle=object(tPoint) {класс tCircle, окружность}

       Rx,Ry,VRx:word;

       procedure Init(InitX,InitY:integer;col,RRx:word);

       procedure Move(NewX,NewY:integer);

      { procedure Hide;}

       Procedure Draw;

    end;

    tEllipse=object(tCircle) {элипс}

       procedure Init(InitX,InitY:integer;col,NRx,NRy:word);

       procedure Move(NewX,NewY:integer);

      { procedure Hide;}

       Procedure Draw;

    end;

    tLine=object(tPoint) {линия}

       Rx,Ry:word;

       procedure Init(InitX,InitY:integer;coll:word);

       procedure Move(NewX,NewY,NewX1,NewY1:integer);

      { procedure Hide;}

       Procedure Draw;

    end;

    tTriangle =object(tLine) {треугольник}

       procedure Init(InitX,InitY:integer;coll:word);

       procedure Move(NewX,NewY,NewX1,NewY1:integer);

      { procedure Hide;}

       Procedure Draw;

    end;

    tKvadrat=object(tLine) {квадрат}

       procedure Init(InitX,InitY:integer;coll:word);

       procedure Move(NewX,NewY,NewX1,NewY1:integer);

      { procedure Hide;}

       Procedure Draw;

    end;

implementation

Uses Crt,Graph; {инициализация графики}

                   {Метод tLocation}

procedure TLocation.Init(InitX,InitY:integer); {процедура, имя класса имя метода и так везде, где в скобках()указаны параметры}

begin

x:=InitX; y:=InitY;

end;

                   {Метод tPoint}

procedure tPoint.Init(InitX,InitY:integer;col:word);

begin

tLocation.Init(InitX,InitY);

color:=col;

end;

procedure tPoint.Move(NewX,NewY:integer);

begin

{Hide;}

x:=NewX;

y:=NewY;

Draw; {метод рисующий фигуру заданным цветом}

end;

{procedure tPoint.Hide;

begin

PutPixel(x,y,GetBkColor);

end;}

procedure tPoint.Draw; {процедура рисования}

begin

PutPixel(x,y,color);

end;

                 {Метод класса tCircle}

procedure tCircle.Init(InitX,InitY:integer;col,RRx:word);

begin

tPoint.Init(InitX,InitY,col);

Rx:=RRx;

end;

procedure tCircle.Move(NewX,NewY:integer);

begin

{Hide;}

x:=NewX;

y:=NewY;

Draw;

end;

{procedure tCircle.Hide;

begin

SetFillStyle(1,GetBkColor);

Setcolor(GetBkcolor);

Circle(x,y,Rx);

end;}

procedure tCircle.Draw;

begin

SetFillStyle(1,GetBkColor);

Setcolor(color);

Circle(x,y,Rx);

end;

                 {Метод класса tEllips}

procedure tEllipse.Init(InitX,InitY:integer;col,NRx,NRy:word);

begin

tCircle.Init(InitX,InitY,col,VRx);

Rx:=NRx;

Ry:=NRy;

end;

procedure tEllipse.Move(NewX,NewY:integer);

begin

{Hide;}

x:=NewX;

y:=NewY;

Draw;

end;

{procedure tEllipse.Hide;

begin

SetFillStyle(1,GetBkColor);

Setcolor(GetBkcolor);

FillEllipse(x,y,Rx,Ry);

end;}

procedure tEllipse.Draw;

begin

SetFillStyle(1,GetBkColor);

Setcolor(color);

FillEllipse(x,y,Rx,Ry);

end;

                  {Метод класса tLine}

procedure tLine.Init(InitX,InitY:integer;Coll:word);

begin;

tLocation.Init(InitX,InitY);

color:=coll;

end;

procedure tLine.Move(NewX,NewY,NewX1,NewY1:integer);

begin

{Hide;}

x:=NewX;

y:=NewY;

x1:=NewX1;

y1:=NewY1;

Draw;

end;

procedure tLine.Draw;

begin

SetFillStyle(1,GetBkColor);

Setcolor(color);

Line(x,y,x1,y1);

end;

            {Метод класса tTriangle}

procedure tTriangle.Init(InitX,InitY:integer;Coll:word);

begin;

tLine.Init(InitX,InitY,color);

color:=coll;

end;

procedure tTriangle.Move(NewX,NewY,NewX1,NewY1:integer);

begin

{Hide;}

x:=NewX;

y:=NewY;

x1:=NewX1;

y1:=NewY1;

Draw;

end;

procedure tTriangle.Draw; {процедура прорисовки треугольника}

begin

SetFillStyle(1,GetBkColor);

Setcolor(color);

  Line(x,x,y,x1); {линии треугольника}

  Line(x,x,y1,x1);

  Line(y,x1,y1,x1);

end;

              {Метод класса tKvadrat}

procedure tKvadrat.Init(InitX,InitY:integer;Coll:word);

begin;

tLine.Init(InitX,InitY,color);

color:=coll;

end;

procedure tKvadrat.Move(NewX,NewY,NewX1,NewY1:integer);

{Hide;} {метод, рисующий фигуру цветом фона}

begin

x:=NewX;

y:=NewY;

x1:=NewX1;

y1:=NewY1;

Draw; {метод, рисующий фигуру цветом фона}

end;

procedure tKvadrat.Draw; {класс,объект}

begin

SetFillStyle(1,GetBkColor); {цвет закраски}

Setcolor(color); {цвет которым будет производится закраска}

Rectangle(x,y,x1,y1); {прямоугольник}

end;

end.


 

А также другие работы, которые могут Вас заинтересовать

26538. ГНИЕНИЕ МЯСА. УСЛОВИЯ И ФАКТОРЫ, ВЫЗЫВАЮЩИЕ ГНИЕНИЕ МЯСА 21.62 KB
  ГНИЕНИЕ МЯСА. УСЛОВИЯ И ФАКТОРЫ ВЫЗЫВАЮЩИЕ ГНИЕНИЕ МЯСА. Гниение самый опасный вид порчи мяса так как при этом процессе разрушаются белковые соединения и образуются вещества опасные для человека. Из составных частей мяса гниению наиболее подвержены мышечная ткань и субпродукты.
26539. ИЗМЕНЕНИЯ В ЖИРЕ В ПРОЦЕССЕ ПРОИЗВОДСТВА И ХРАНЕНИЯ (ГИДРОЛИЗ,ОКИСЛЕНИЕ, ОСАЛИВАНИЕ) 3.31 KB
  ГИДРОЛИЗ характеризуется присоединением к молекуле жира воды в результате чего она расщепляется на глицерин и жирные кислоты. Данный процесс начинается после разделки мясной туши и извлечения жира. Накопление свободных жирных кислот снижает питательную ценность жира и ускоряет развитие в нем окислительных процессов. ОСАЛИВАНИЕ вид порчи жира характеризующийся накоплением в нем предельных оксикислот.
26540. ИСТОРИЯ ОТЕЧЕСТВЕННОЙ ВСЭ 5.17 KB
  всэ явились общественное производство мяса и мясных продуктов и создание мясной промышленности. В 1925г – первые в СССР Правила ветсан осмотра убойных животных исследования и браковки мясных продуктов. 30е годы – строительство крупных механизированных мясокомбинатов зарождение молочной и пищевой промышленности в связи с этим – кафедры мясоведения реорганизованы в кафедры ВСЭ с основами технологии переработки продуктов животноводства. врачей являются Правила ветеринарного осмотра убойных животных и всэ мяса и мясных продуктов1988 и...
26541. БАКТЕРИЦИДНАЯ ФАЗА МОЛОКА И ФАКТОРЫ, ВЛИЯЮЩИЕ НА ЕЕ ПРОДОЛЖИТЕЛЬНОСТЬ 2.99 KB
  БАКТЕРИЦИДНАЯ ФАЗА МОЛОКА И ФАКТОРЫ ВЛИЯЮЩИЕ НА ЕЕ ПРОДОЛЖИТЕЛЬНОСТЬ. Продолжительность данной фазы при различных температурах молока следующая: при 37С 2 часа при 30С 3 часа при 25С 6 часов при 10С 24 часа при 5С 36 часов и при 0С 48 часов. При нагревании молока до 70С и выше бактерицидные вещества разрушаются и микрофлора попавшая в такое молоко размножается беспрепятственно. На бактерицидную фазу влияют промежуток времени с момента выдаивания до охлаждения молока чем короче этот промежуток времени тем продолжительнее...
26543. ВЕТЕРИНАРНО-САНИТАРНЫЕ ТРЕБОВАНИЯ, ПРЕДЪЯВЛЯЕМЫЕ К БОЕНСКИМ ПРЕДПРИЯТИЯМ 10.71 KB
  Для окраски стен и потолков применяют алкидные краски при этом в разных цехах соответствующей цветовой гаммы. В цехах на каждые 150 м2 пола встраивают краны с горячей и холодной водой. В цехах для приема сточных вод оборудуют покрытые трапами решетками воронки в глубине которых устанавливают сифоны для улавливания грязи грубых частиц. ВОЗДУШНАЯ СРЕДА в производственных цехах температура влажность запыленность бактериальное загрязнение влияет на условия труда людей и на санитарное качество продукции.
26544. ВЕТСАНЭКСПЕРТИЗА, ГИГИЕНА И ТЕХНОЛОГИЯ КОЛБАСНОГО ПРОИЗВОДСТВА. ТЕХНОЛОГИЯ ПРОИ3ВОДСТВА ВАРЕНЫХ КОЛБАС 46.7 KB
  ВЕТСАНЭКСПЕРТИЗА ГИГИЕНА И ТЕХНОЛОГИЯ КОЛБАСНОГО ПРОИЗВОДСТВА. ТЕХНОЛОГИЯ ПРОИ3ВОДСТВА ВАРЕНЫХ КОЛБАС. К вареным колбасам относят изделия изготовленные из мяса подвергнутые обжарке и варке или запеканию мясные хлеба. Вареные колбасы являются самым массовым и распространенным видом продукта.