ИЛИ ПРОСТО ОПИШИТЕ КЛАСС ГЕОМЕТРИЧЕСКИЕ ФИГУРЫ, КАК ПОСЧИТАЕТЕ НУЖНЫМ.
Помогите пожалуйста. В программирование не силен. Как работать с классами не знаю.
Нужно, что бы выглядело так:
Меню программы:
- Треугольник
- Круг
- Квадрат Выбираем нужную геометрическую фигуру (вводим с клавиатуры например 2). Программа просит, задать размер фигуры, в даном случае размер круга (его радиус). Вводим с клавиатуры например 7. Программа просит выбрать цвет фигуры.
- Красный
- Оранжевый
- Желтый
- Зеленый
- Голубой
- Синий
- Фиолетовый Выбираем нужный цвет например 4. Программа выводит графическое окно, в которой нарисован зеленый круг радиусом 7. И для всего этого добра нужно рассмотреть класс геометрических фигур. (ну что бы были Инкапсуляция, Полиморфизм и Наследование) Есть мой код выглядит так, его надо доделывать сильно.
> Program classfigur;
> Uses graphabc;
> Var
> n: Byte;
> procedure krug;
> begin
> Circle(500,200,100);
> FLOODFILL(500,200,clred);
> end;
> procedure kvadr;
> begin
> line(200,1,440,1);
> line(440,1,440,240);
> line(440,240,200,240);
> line(200,240,200,1);
> FLOODFILL(240,200,clblue);
> end;
> procedure treug;
> begin
> line(300,100,500,300);
> line(500,300,100,300);
> line(100,300,300,100);
> FLOODFILL(300,200,clgreen);
> end;
> begin
> repeat
> WriteLn('1-Круг');
> WriteLn('2-Квадрат');
> WriteLn('3-Треугольник');
> WriteLn('4-Выход');
> Write('5-Следующая фигура: ');
> ReadLn(n);
> Case n of
> 1: krug;
> 2: kvadr;
> 3: treug;
> end;
> until n <> 0;
> end.
Предусмотреть методы для создания объектов, изменения размеров и цвета. Спасибо.
еще нужно что бы выводил данные о фигурах(место расположение и размер) Есть еще код но уже не мой.
uses GraphAbc;
var w:char;
j:integer;
begin
repeat
ClearWindow;
textout(1,10,'Выберите действие');
textout(1,30,'1-нарисовать квадрат');
textout(1,50,'2-нарисовать круг');
textout(1,70,'другое выход');
readln(w);
case w of
'1':begin
textout(1,90,'Сторона:');
readln(j);
ClearWindow;
Rectangle(WindowWidth div 2-j div 2,WindowHeight div 2-j div 2,WindowWidth div 2+j div 2,WindowHeight div 2+ j div 2);
textout(WindowWidth div 2-50,10,'Нажмите Enter');
readln;
end;
'2':begin
textout(1,90,'радиус:');
readln(j);
ClearWindow;
Circle(WindowWidth div 2,WindowHeight div 2,j);
textout(WindowWidth div 2-50,10,'Нажмите Enter');
readln;
end;
else exit;
end;
until not (w in ['1','2']);
end.
П.С. можно и не 3 фигуры а 1 круг или квадрат.