Предмет: Информатика, автор: belckazavrick

1) Розробити програму з наслідуванням об'єктами атрибутів одного класу для обчислення площ двох прямокутних трикутників із відомими катетами.

2)Розробити програму з наслідуванням методів одного класу іншим класом, у якій клас А1 є суперкласом, а клас А2 - підкласом. Клас А2 має доступ до всіх атрибутів класу А1. Програма обчислює суму, добуток і частку трьох пар чисел.

Ответы

Автор ответа: CarlBro
1

Ответ:

1)

type

 Triangle = class

 private

   FLeg1: real;

   FLeg2: real;

 public

   property Leg1: real read FLeg1 write FLeg1;

   property Leg2: real read FLeg2 write FLeg2;

   function Area: real;

 end;

function Triangle.Area: real;

begin

 Result := 0.5 * Leg1 * Leg2;

end;

var

 t1, t2: Triangle;

begin

 t1 := Triangle.Create;

 t2 := Triangle.Create;

 t1.Leg1 := 3;

 t1.Leg2 := 4;

 t2.Leg1 := 5;

 t2.Leg2 := 6;

 WriteLn('Area of triangle 1: ', t1.Area:0:2);

 WriteLn('Area of triangle 2: ', t2.Area:0:2);

end.

2)

type

 A1 = class

 private

   FNum1: integer;

   FNum2: integer;

 public

   property Num1: integer read FNum1 write FNum1;

   property Num2: integer read FNum2 write FNum2;

   function Sum: integer;

   function Product: integer;

 end;

 A2 = class(A1)

 public

   function Fraction: real;

 end;

function A1.Sum: integer;

begin

 Result := Num1 + Num2;

end;

function A1.Product: integer;

begin

 Result := Num1 * Num2;

end;

function A2.Fraction: real;

begin

 Result := Num1 / Num2;

end;

var

 a: A2;

begin

 a := A2.Create;

 a.Num1 := 3;

 a.Num2 := 4;

 WriteLn('Sum: ', a.Sum);

 WriteLn('Product: ', a.Product);

 WriteLn('Fraction: ', a.Fraction:0:2);

end.

Объяснение:

Похожие вопросы
Предмет: Математика, автор: 1004kovty