Создать объект "Прямоугольник" с параметрами: длины сторон, цвет - Turbo Pascal
Формулировка задачи:
Объект — прямоугольник с параметрами: длины сторон, цвет. Пусть методами будет
а) порождение прямоугольника;
б) изменение его цвета.
Решение задачи: «Создать объект "Прямоугольник" с параметрами: длины сторон, цвет»
textual
Листинг программы
uses graph,crt;
var x,y:integer;
type rect=object
w,h,c:integer;
procedure Init;{порождение}
procedure NewColor(c1:integer);{изменение цвета}
end;
procedure rect.Init;
begin
setcolor(c);
rectangle(x-w div 2,y-h div 2,x+w div 2,y+h div 2);
end;
procedure rect.NewColor(c1:integer);
begin
c:=c1;
end;
var g,m:integer;
r:rect;
begin
randomize;
initgraph(g,m,'');
x:=getmaxX div 2;
y:=getmaxY div 2;
r.w:=300;
r.h:=150;
r.c:=12;
r.Init;
outtextXY(x-50,y,'Press Enter');
readln;
r.NewColor(14);
r.Init;
readkey
end.
Объяснение кода листинга программы
- В начале кода подключаются необходимые библиотеки graph и crt.
- Объявляются переменные x и y типа integer.
- Создается новый тип объекта rect с полями w, h и c типа integer.
- Определяются два метода для объекта rect: Init и NewColor.
- В методе Init устанавливается цвет с помощью функции setcolor, а затем рисуется прямоугольник с помощью функции rectangle.
- В методе NewColor устанавливается значение переменной c.
- Далее объявляются переменные g и m типа integer, и создается объект r типа rect.
- С помощью функции randomize инициализируется генератор случайных чисел.
- С помощью функции initgraph создается графическое окно.
- Устанавливаются значения переменных x и y, полученные с помощью функции getmaxX и getmaxY.
- Устанавливаются значения параметров w и h для объекта r.
- Вызывается метод Init для объекта r.
- Выводится текст с помощью функции outtextXY.
- Вызывается функция readln для чтения нажатия клавиши.
- Вызывается метод NewColor для объекта r с аргументом 14.
- Вызывается метод Init для объекта r.
- Вызывается функция readkey для чтения нажатия клавиши.
- Конец программы.