Лекс Айрин писал(а):Ну, вообще-то при наследовании используется код родителя полностью. Вычисление полной площади это дополнение, а не переписывание. Нужно будет добавить один метод.
Если разобраться более подробно с точки зрения элементарной математики и логики , то тут наследование - вообще бред. Как можно наследовать геометрическое тело от фигуры ? Круг - это не шар . Квадрат ...О , сколько тут вариантов-то ? , куб , параллелепипед, ромбододэкаэдр, призма ( а призм еще черти сколько с квадратным основанием ) . Пирамиды - тоже черти сколько . Как наследовать ? Если к квардрату прибавить апофему - будет пирамида. А какая ? Усеченная , косая? Треугольник - он тоже может быть основанием пирамиды ... Получается , что геометрическая фигура - это отдельный класс , а геометрическое тело - отдельный . Девочки, как говорится , направо , мальчики - налево.
ТАким образом имеем два базовых класса:
- Код: Выделить всё
TGeometricFigure = class
end;
TGeometricBody = class
end;
Если припомнить немного математики , то можно выделить основные свойства , которые есть у , допустим плоской фигуры. Что это ? Это , конечно же Площадь. Основа основ. Потому что у круга не бывает сторон , но он - тоже плоская фигура и площадь у него есть . Вообще , если посмотреть повнимательней - у плоских фигур ( У ВСЕХ ) есть два объединяющих свойства - площадь и условный центр тяжести ( центр ) . Понятно , что у базового класса должны быть основными центр и площадь. Запишем:
- Код: Выделить всё
TCoordPlain = packed record { двумерная система координат "Евклидова" }
X,Y:Real;
end;
TCoordStereo = packed record { несложно догадаться , что это трехмерная система координат " Неевклидова "}
X,Y,Z:Real;
end;
TGeometricFigure = class
private
FArea:Real;
FCenterOfMass:TCoordPlain;
public
property Area:Real read FArea;
property CenterOfMAss:TCoordPlain;
end;
Так же у плоской фигуры есть вершины , а вершина - это какая-то координата ( точка) на плоскости Декарта . Ой , да ? Окружность , как исключение , имеет множество точек ,равноудаленное от центра ( И то не всегда! Есть еще эллипс . ай-яй-яй ... ( вспомним-ка аналитическую геометрию ) ... Если пойти дальше , то можно прийти к выводу , что координатная система плоских фигур не подойдет для сечений , хотя сечения образуют собой плоские фигуры. Такая вот загогулинка

Изначально эту задачу можно считать
ООПсурдной. Ну нельзя наследовать помидор от галоши. Ну никак не получится
