![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
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 - 3.11.2006 22:22 -------------------- 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... |
![]() ![]() |
![]() |
Текстовая версия | 18.07.2025 0:49 |