- •Лабораторная работа №9 Комбиированный тип - запись Тип данных – Запись
- •Формат определения типа.
- •Правила создания записного типа
- •Представление переменной типа запись в памяти
- •Доступ к значению поля в записи
- •Расчет объема памяти, выделяемого переменной типа запись
- •Требования к выполнению лабораторной работы
- •Варианты заданий
- •Пример разработки одномодульного приложения.
- •Контрольные вопросы
- •Лабораторная работа 10 Разработка приложений под Windows средст вами Delphi Создание оконного приложения
- •Требования к выполнению лабораторной работы
- •Контрольные вопросы
- •Лабораторная работа №11 Объектно-ориентированное программирование Определение класса
- •Наследование
- •Требовния к выполнению лабораторной работы
- •Варианты заданий
- •Контрольные вопросы.
- •Лабораторная работа №12 файлы Текстовый файл
- •Типизированный файл
- •Требования к выполнению лабораторной работы
- •Варианты заданий
- •Контрольные вопросы
- •Библиографический список
Наследование
Формат определения класса наследника
Type
Имя класса=class(Имя класса родителя)
[private/ public/ protected/published]
элементы класса
[property]
свойства класса
end;
Пример определения класса наследник от класса Droby.
Новый класс должен иметь помимо методов родителя еще и метод умножения дробей.
Unit Nasl;
Interface
Uses ClassDroby;
Type
Tnasl=class(Tdroby)
Public
procedure Tdroby.Mult(D:Tdroby);
end;
procedure Tnasl. Mult (D:Tdroby);
begin
a:=D.a*a;
b:=D.b*b;
r:=NOD;
sokrash;
end;
end.
//использование наследника в приложении
uses Nasl;
var
O1, o2: Tnasl;
Begin
O1:=Tnasl.create;
O2:=Tnasl.create;
O1.set_a(5);
O2.set_b(7);
O2.set_a(2);
O2.set_b(3);
O1.mult(O2);
Writel(O1.get_a, ‘/’, O1.get_b)
End.
Требовния к выполнению лабораторной работы
Создать модуль Unit с именем Parent.
Определить базовый класс с именем Tbase и полями данных определенными в варианте задания. Включить в класс методы, обеспечивающие:
заполнение полей данных;
отображение (вывод ) полей данных;
конструктор, который инициализирует поля класса пустыми значениями;
деструктор, сообщающий об удалении объекта.
Создайть приложение под windows, демонстрирующее выполнение всех методов базового класса.
Создать модуль Unit с именем Naslednic1. На основе базового класса создайть класс наследник с именем TNasl1, содержащий методы доступа к каждому отдельному полю:
для чтения значений полей данных (функции);
для записи значений полей данных (процедуры).
Создать приложение под Windows, демонстрирующее выполнение всех методов наследника.
Создать модуль Unit с именем Naslednic2. На основе базового класса создайть класс наследник с именем TNasl2, обеспечивающий доступ к объектам класса с помощью механизма свойств - property.
Создать приложение, демонстрирующее применение свойств.
Добавить в приложение процедуру, которая принимает в качестве параметра объект типа TNasl2 и выводит значения полей объекта, получая значения полей через свойства.
Таблица 6
Варианты заданий
|
Объект |
Список полей |
1 |
Студент |
Номер зачетной книжки, Фамилия, Имя, Дата рождения, Номер телефона, Дата поступления, Признак удаления записи |
2 |
Спортсмен |
Фамилия, Имя, Дата рождения, Вес, Рост, Пол |
3 |
Запись в записной книжке |
Фамилия, Номер телефона, Дата рождения. |
4 |
Житель |
Фамилия, Город, Адрес: улица, дом, квартира. |
5 |
Книга |
Автор, Название, Инвентарный номер, Издательство, Количество страниц, Цена |
6 |
Успеваемость |
Номер зачетной книжки, Шифр группы, Название дисциплины, Дата получения оценки, Оценка, Фамилия преподавателя При вводе данных в строковые поля предусмотреть преобразование их к формату: первая буква большая, остальные маленькие) |
7 |
Запись в Карточке пользователя библиотеки |
Инвентарный номер, Автор, Название, Дата выдачи, Дата возврата |
8 |
Работающий студент |
Номер зачетной книжки, Группа, Код специальности, место работы |
9 |
Игрушка |
конструктор и т.д.), стоимость в копейках(вводится может дробное число, содержащее рубли и копейки), возрастные границы детей, для кого игрушка предназначена( два поля -начальный возраст и конечный) |
10 |
Претендент
|
Фамилия, Имя Отчество, Возраст, Рост, Цвет глаз, Цвет волос, Зарплату, Наличие квартиры, Наличие машины |
11 |
Пациент
|
Фамилия , Имя, Отчество, Адрес, Место работы, Наличие прививки от гриппа, Дата последней флюорографии
|
12 |
Квартира
|
Общая площадь, Жилая площадь, Площадь кухни, Наличие лоджии, Наличие санузла и его характеристики(совмещенный или нет), Панельный или кирпичный дом, Этаж, Общее количество этажей, Адрес, Стоимость, Район города |
13 |
Автомобиль
|
Модель, Номер(код региона, цифровой код, буквенный код), Цвет, Сведения о владельце(Фамилия, Имя , Адрес), дата последнего техосмотра. |
13 |
Видеофильм
|
Название, Студия, Жанр, Год выпуска, Режиссер, фамилии исполнителей главных роли(не более 10). |
14 |
Спортсмен
|
Анкетные и антропологические данные, Гражданство, Вид спорта, Клуб, Данные о личном рекорде(дата, призовое место) |
15 |
Банк
|
Наименование, Адрес, Статус(форма собственности), условия хранения средств на личном счету(годовые проценты на различных видах вкладов) |
16 |
Требования Покупателя автосалона
|
Контактный телефон, Финансовые возможности, Техническое состояние,. Марка, Год выпуска, Технические характеристики(Мощность двигателя, Количество цилиндров, и т.д.), Особенности исполнения, Запрашиваемая цена. |
17 |
Тур
|
Страна, Город, Условия проживания(Отель-звезды, Автобус и т. д.), Условия проезда, Экскурсионное обслуживание, Сервис принимающей стороны, Стоимость путевки. |