ООП: определить объект "Закрашенный прямоугольник" - Pascal
Формулировка задачи:
Используя ООП, определить объект ЗАКРАШЕННЫЙ ПРЯМОУГОЛЬНИК. Отобразить прямоугольник белого цвета в центре экрана. Диагонально переместить его. Изменить цвет на красный.пж помагите
Решение задачи: «ООП: определить объект "Закрашенный прямоугольник"»
textual
Листинг программы
uses crt,graph; type Rect=object x1,y1,h,w:integer; procedure Create; procedure Move(xc,yc,cv,a,b:integer); procedure Clear(a,b:integer); end; procedure Rect.Create; begin write('Shirina w=: '); readln(w); write('Vysota h='); readln(h); end; procedure Rect.Move; begin x1:=xc; y1:=yc; setfillstyle(1,cv); bar(x1-w div 2,y1-h div 2,x1+w div 2,y1+h div 2); outtextXY(a,b,'Press Enter...'); end; procedure Rect.Clear; begin readkey; cleardevice; outtextXY(a,b,'Press Enter...'); end; var k:Rect; d,m,x0,y0,x,y:integer; begin clrscr; k.create; d:=0; initgraph(d,m,''); x0:=getmaxX div 2; y0:=getmaxY div 2; x:=x0-50; y:=getmaxY-30; {d:=k.d div 2;} k.move(x0,y0,15,x,y); k.clear(x,y); k.move(k.w div 2,k.h div 2,12,x,y); k.clear(x,y); end.
Объяснение кода листинга программы
- Объявлен тип данных Rect, который представляет объект
Закрашенный прямоугольник
. У этого объекта есть свойства x1, y1, h, w, а также методы Create, Move и Clear. - В методе Create задаются вопросы пользователю для ввода размеров прямоугольника (ширина и высота).
- В методе Move используется функция bar для закрашивания прямоугольника указанного размера с заданными координатами.
- В методе Clear используется функция readkey для ожидания нажатия клавиши, после чего выполняется очистка экрана и повторно выводится приглашение.
- Переменные d, m, x0, y0, x, y используются для координат и размеров прямоугольника и его отображения.
- Вызываются методы Create, Move и Clear для объекта k.
- После вызова метода Move выполняется очистка экрана и повторное отображение прямоугольника с центрированным текстом.
- Код завершается вызовом функции readkey для ожидания нажатия клавиши.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д