PascalDelphi / Задания на лабы 2 семестр / LAB10 ООП
.DOCЛабораторная работа №13.
ТЕМА: Объектно – ориентированное программирование.
ЦЕЛЬ: Получение навыков в разработке объектно – ориентированных программ.
Темы теоретической подготовки.
Идея ООП. Наследование записей. Операции и методы. Инкапсуляция. Основные свойства ООП. Сокрытие данных в объектах. Конструкторы и деструкторы в объектах. Полиморфизм. Наследование. Виртуальные методы. Динамические объекты. Динамические методы. Объект – дерево – таблица.
Контрольные вопросы.
-
В чем состоит основная идея ООП?
-
Укажите основные свойства ООП.
-
Что такое объект?
-
Что отличает структуру объекта от структуры запись?
-
Что означает наследование объекта?
Укажите, что будет базовыми объектами для объекта – многоэтажный многоквартирный дом.
-
Что понимается под полиморфизмом операций?
-
Что такое метод?
-
Что такое конструктор, деструтор?
-
Что значит – вертуальный метод?
-
Размещение объекта в памяти.
ЗАДАНИЕ
-
Создайте модуль и разместите в нем базовый объект.
-
Создайте приложение и включите в него объект-наследник согласно задания.
-
Разработайте самостоятельно пример, демонстрирующий работу объектов.
ВАРИАНТЫ
1 |
Базовый объект |
Методы |
Свойства |
Наследник |
|
Свойства |
Методы |
||||
2 |
Одномерный динамический массив |
Заполнение Вывод на экран |
Кол-во элементов |
|
Сложение векторов, умножение вектора на константу.
|
3 |
Статическая матрица |
Заполнение Вывод на экран |
Кол-во строк Кол-во столбцов |
|
Транспонирование, умножение двух матриц |
4 |
Строка(string) |
Заполнение Вывод на экран
|
Длина строки |
|
Конкатенация, удаление из строки всех символов, равных заданному символу |
5 |
Окружность |
Заполнение поля данных Вывод значения поля |
Длина радиуса |
Длина и площадь круга |
Вычисление длины и площади круга Вывод длины и площади |
6 |
Сфера.
|
Заполнение полей данных Вывод значения поля |
Длина радиуса |
Площадь сферы |
Вычисление и отображение площади и объема сферы
|
7 |
Комплексное число
|
Вывод числа в комплексной форме Создание числа |
Вещественная и мнимая части числа |
Модуль числа |
Сложение двух чисел, умножение, двух чисел. Определение модуля числа |
8 |
Отрезок
|
Ввод координат Вывод координат |
Координаты концов отрезка |
Длина отрезка |
Вычисление длины отрезка Вычисление новых координат концов отрезка после его поворота относительно своего центра на заданный угол |
9 |
Строка. |
Заполнение строки Вывод строки |
|
Длина строки |
Определение длины строки, операция сравнения двух строк |
10 |
Дата в формате: число, месяц, год.
|
Заполнение полей данных Вывод даты |
|
|
Сложение даты с количеством дней заданных пользователем, вычитание из даты заданного пользователем количества дней, вычисление числа дней между двумя датами(все операции с учетом високосного года) |
11 |
Многочлен N-ой степени. |
Заполнение полей данных Отображение на экране в виде полинома |
Степень многочлена |
Значение многочлена |
Вычисление значения полинома в точке Х, сложение, вычитание двух полиномов |
12 |
Рациональная дробь
|
Заполнение полей данных Отображение в виде дроби |
Числитель Знаменатель |
|
Сложение двух дробей, вычитание двух дробей, приведение дроби к несократимому виду
|
13 |
Динамический одномерный массив вещественных чисел |
Заполнение массива Вывод массива |
Количество элементов |
|
Добавление, удаление элемента, поиск заданного элемента |
14 |
Прямоугольник.
|
Ввод значений полей данных Вычисление периметра Отображение периметра |
Длина и ширина |
Площадь |
Вычисление площади прямоугольника
|
15 |
Параллепипе
|
Заполнение полей данных Вычисление объема параллелепипеда |
Длина и ширина основания, высота параллелепипеда |
Площадь поверхности |
Вычисление площади поверхности Вывод площади и объема параллелепипеда |
16 |
Параллепипе
|
Заполнение полей данных Вывод площади и объема параллелепипеда |
Длина и ширина основания, высота параллелепипеда |
Площадь поверхности |
Вычисление площади поверхности Вывод площади и объема параллелепипеда(переопределите метод предка) |
17 |
Студент
|
Заполнение полей данных Вывод анкетных данных Изменение данных по студенту |
Фамилия, номер зач. книжки, номер групы, факультет |
Оценки за прошедшую сессию Количество оценок |
Средний балл в сессию |
18 |
Студент.
|
Заполнение полей данных Вывод анкетных данных Изменение данных по студенту |
Фамилия, номер зач. книжки, номер групы, факультет |
Место работы Заработная плата Дата поступления на работу |
Работающий студент. : Ввод данных по работающему студенту, вывод места работы студента, подсчет общего стажа.
|
19 |
Угол на плоскости(угол в градусах)
|
Ввод величины угла Вывод величины угла, |
Величина угла |
Величина угла в радианах |
Перевод величины угла в радианы, нахождение синуса угла.
|
20 |
Множество |
Заполнение Вывод значений |
Количество элементов |
|
Объединение двух множеств Пересечение двух множеств |