Bombucho писал(а):а с пирамидой траблы...
Еще бы, где вы вычисляете fapothem? Это поле при создании инициализируется нулем, я уже грил. И так нулем у вас и существует.
- Код: Выделить всё
property Apothem : real read fapothem write fapothem;
Не надо писать writе..., у вас свойство только для чтения, поэтому только read оставьте.
И вобще тут подводный косяк, который может быть вы поймете когда начнете в класс впихивать вычисление поля. Ну да ладно. Сразу подсказка: Представьте, что переменной fapothem у вас не будет. Значение свойства Apothem будет вычисляться как результат функции GetApothem, аналогично как устроены свойства on_get_perimetr и on_get_area. И в вычислении площади пирамиды будете использовать уже GetApothem вместо fapothem.
Примерное изменение:
- Код: Выделить всё
Tpyramid = class(Tsquare)
fheight : integer;
function GetApothem: real; // *** Замена поля на функцию ***
function get_area : real;
public
constructor Create;
destructor Destroy; override;
property Height : integer read fheight write fheight;
property Apothem : real read GetApothem; // *** Только чтение результата функции ***
property Area : real read get_area;
end;
Добавлено спустя 6 минут 5 секунд:Да, да, да. В итоге или тут начале - Человек произошел от обезъяны
