![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
Postal_Dude |
![]()
Сообщение
#1
|
Группа: Пользователи Сообщений: 7 Пол: Мужской Реальное имя: Postal_Dude Репутация: ![]() ![]() ![]() |
Задача: Родительский класс - круг радиуса R=11 Вычислить его площадь. Производный класс - прямой конус высотой H=6. Вычислить его объем.
заранее спасибо. |
Романтик |
![]()
Сообщение
#2
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 159 Пол: Мужской Реальное имя: Anton Репутация: ![]() ![]() ![]() |
Задача: Родительский класс - круг радиуса R=11 Вычислить его площадь. Производный класс - прямой конус высотой H=6. Вычислить его объем. заранее спасибо. не мог бы ты пояснить, что такое родительский класс, а что производный? -------------------- made in USSR.
|
Postal_Dude |
![]()
Сообщение
#3
|
Группа: Пользователи Сообщений: 7 Пол: Мужской Реальное имя: Postal_Dude Репутация: ![]() ![]() ![]() |
не мог бы ты пояснить, что такое родительский класс, а что производный? вроде бы используется так называемое Наследование. когда один класс есть как бы порождение другого при этом порожденный класс может использовать теже свойства,методы и поля что и в родительском + дополнять их своими...если не ошибаюсь |
klem4 |
![]()
Сообщение
#4
|
![]() Perl. Just code it! ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: ![]() ![]() ![]() |
Как-то так ...
uses crt;
type
TCircle = Object
public
constructor Init(r : word);
destructor Done;
function GetS : single;
private
radius : word;
end;
TConus = Object(TCircle)
public
constructor Init(r, h : word);
destructor Done;
function GetV : single;
private
height : word;
end;
constructor TCircle.Init(r : word);
begin
radius := r;
end;
destructor TCircle.Done;
begin end;
function TCircle.GetS : single;
begin
GetS := 2 * PI * radius;
end;
constructor TConus.Init(r, h : word);
begin
inherited Init( r );
height := h;
end;
destructor TConus.Done;
begin
inherited Done;
end;
function TConus.GetV : single;
begin
GetV := (1/3) * height * PI * PI;
end;
var
cir : TCircle;
con : TConus;
begin
clrscr;
cir.Init(11);
con.Init(11, 6);
writeln('S circle = ', cir.GetS : 2 : 2);
writeln('V conus = ', con.GetV : 2 : 2);
readln;
end.
Сообщение отредактировано: volvo - -------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
volvo |
![]()
Сообщение
#5
|
Гость ![]() |
![]() function TCircle.GetS : single;
begin
GetS := PI * Sqr(radius);
end;
...
function TConus.GetV : single;
begin
GetV := (1/3) * heigth * GetS;
end;
Кроме этого, совершенно необязательно создавать объект типа TCircle: var
con : TConus;
begin
clrscr;
con.Init(11, 6);
writeln('S circle = ', con.GetS : 2 : 2);
writeln('V conus = ', con.GetV : 2 : 2);
readln;
end.
|
Postal_Dude |
![]()
Сообщение
#6
|
Группа: Пользователи Сообщений: 7 Пол: Мужской Реальное имя: Postal_Dude Репутация: ![]() ![]() ![]() |
спасибо за помошь!
щас буду както это вбивать в lazarus... |
![]() ![]() |
![]() |
Текстовая версия | 16.04.2025 1:44 |