
- •Лабораторная работа №1
- •Ход работы:
- •Лабораторная работа №2
- •Ход работы:
- •Задание для самостоятельного решения
- •Лабораторная работа №3
- •Ход работы:
- •Задание для самостоятельного решения
- •Учреждение образования «Гомельский торгово-экономический колледж» Белкоопсоюза
- •Лабораторная работа №4
- •Динамическое создание объектов
- •Динамические объекты. Деструкторы
- •Ход работы:
- •Задание для самостоятельного решения
- •Учреждение образования «Гомельский торгово-экономический колледж» Белкоопсоюза
- •Лабораторная работа №5
- •Procedure tForm1.Button2Click (Sender: tObject); {обработка массива}
- •Задание для самостоятельного решения
- •Учреждение образования «Гомельский торгово-экономический колледж» Белкоопсоюза
- •Лабораторная работа №6
- •Ход работы:
Ход работы:
Задание 1. Наберите и проанализируйте программу. Определите в данной программе принципы наследования созданных классов. Объясните результаты выполнения программы.
PROGRAM OO_Beispiel_02;
USESCrt;
TYPE
Person-OBJECT Name,
Vorname: STRING; Groesse: REAL; CONSTRUCTOR Init; PROCEDURE Einlesen; PROCEDURE Ausgeben; FUNCTION Gewicht: REAUVIRTUAL; END;
{ Методы для класса Person }
CONSTRUCTOR Person.Init;
{ Применяется для инициализации используемых данных}
BEGIN
Name :- "; { Пустая строка }
Vorname :- ";
Groesse:=0.0; END;
PROCEDURE Person.Einlesen; BEGIN
WriteLn('Фамилия');
ReadLn(Name);
WriteLn ('Имя? ');
ReadLn(Vorname);
Write('PocT в метрах? ');
ReadLn(Groesse); END;
PROCEDURE Person.Ausgeben; BEGIN
Write Ln;
WriteLn ('Фамилия: ');
Write(Name);
Write(' Имя:');
Write(Vorname);
WriteLn(' Идеальный вес: ',Gewicht:3:1, 'кг.'); END;
FUNCTION Person.Gewicht: REAL; BEGIN
Gewicht:- Groesse * 100 - 100; END;
{ Обьявление подкласса Frau } TYPE
Frau- OBJECT(Person)
FUNCTION Gewicht: REAL;VIRTUAL; END;
{ Описание методов для подкласса Frau } FUNCTION Frau.Gewicht: REAL; BEGIN
Gewicht-Person.Gewlcht * 0.85; END;
{ Обьявление подкласса Mann } TYPE
Mann- OBJECT(Person)
FUNCTION Gewicht: REAL;VIRTUAL; END;
{ Описание методов подкласса Mann } FUNCTION Mann.Gewlcht: REAI; BEGIN
Gewicht:- Person.Gewicht * 0.90; END;
{ Обьявление экземпляров} VAR
Weiblich :Frau;
Maennlich :Mann;
CH :CHAR;
BEGIN
REPEAT
CH:-ReadKey;
CH:-UpCase(CH); UNTIL (CH - 'M') OR (CH - 'W');
Write Ln;
IFCH-'W THEN WITH Weiblich DO BEGIN Einlesen; Ausgeben; END {THEN WITH} ELSE WITH Maennlich DO BEGIN
Einlesen; Ausgeben; END; {ELSE WITH}
ReadLn; { Ожидание нажатия клавиши Enter } END.
Задание для самостоятельного решения
Задание 2.
Создать абстрактный класс CVehicle. На его основе реализовать классы CPlane, CCar и CShip. Классы должны иметь возможность задавать и получать координаты, параметры средств передвижения (цена, скорость, год выпуска). Для самолета должна быть определена высота, для самолета и корабля – количество пассажиров. Для корабля – порт приписки.
Написать программу, создающую список объектов этих классов. Программа должна содержать меню, позволяющее осуществить проверку всех методов класса.
Задание 3.
Создать класс CPoint – точка. На его основе создать классы CColoredPoint и CLine. На основе класса CLine создать классы CColoredLine и CPolyLine – многоугольник. Все классы должны иметь методы для установки и получения значений всех координат, а также изменения цвета и получения текущего цвета.
Написать демонстрационную программу, в которой будет использоваться список объектов этих классов..
Учреждение образования «Гомельский торгово-экономический колледж» Белкоопсоюза
|
Рассмотрено на заседании цикловой комиссии «Информатики и программирования» Протокол № __ от «__»_____________2012 г. Председатель цикловой комиссии _______________________ Н.С. Васьковцова |