
- •Лабораторна робота №1
- •Порядок виконання роботи
- •Завдання 1
- •Завдання 2
- •Завдання 3
- •Теоретичні відомості Масиви динамічної пам'яті
- •Приклад виконання завдання 1
- •Лістинг програми
- •Приклад виконання завдання 2
- •Лістинг програми
- •Приклад виконання завдання 3
- •Лістинг програми
- •Контрольні запитання
- •Лабораторна робота №2
- •Порядок виконання роботи
- •Завдання 1
- •Завдання 2
- •Теоретичні відомості Читання і запис текстових файлів
- •Читання і запис бінарних файлів
- •Відкриття бінарних файлів
- •Файли з послідовним доступом
- •Запис даних у файл з послідовним доступом
- •Файли з довільним доступом
- •Приклад виконання завдання 1
- •Приклад виконання завдання 2
- •Контрольні запитання
- •Лабораторна робота №3
- •Порядок виконання роботи
- •Завдання 1
- •Завдання 2
- •Завдання 3
- •Теоретичні відомості
- •Обмеження доступу до членів класу
- •Специфікатори доступу
- •Вбудовані функції-члени
- •Приклад виконання завдання 1.
- •Приклад виконання завдання 2.
- •Приклад виконання завдання 3.
- •Контрольні запитання
- •Лабораторна робота №4
- •Порядок виконання роботи
- •Завдання 2
- •Теоретичні відомості Конструктори і деструктори
- •Правила роботи з конструкторами і деструкторами
- •Варіант 10. Розробити описовий алгоритм, схему алгоритму і написати метод для підрахування кількості слів в текстовому файлі.
- •Приклад виконання завдання 2
- •Контрольні запитання
- •Лабораторна робота №5
- •Порядок виконання роботи
- •Завдання 1
- •Завдання 2
- •Теоретичні відомості Принципи спадкування в ооп
- •Оголошення похідних класів
- •Конструктори похідного класу
- •Функції члени похідного класу
- •Заборонені члени класу (Protected)
- •Приклад виконання Завдання 1
- •Контрольні запитання
- •Лабораторна робота №6
- •Порядок виконання роботи
- •Завдання 1
- •Теоретичні відомості Перевантаження операторів
- •Приклад виконання завдання 1
- •Приклад виконання завдання 2
- •Приклад виконання завдання 3
- •Приклад виконання завдання 4
- •Контрольні запитання
- •Лабораторна робота №7
- •Порядок виконання роботи
- •Завдання 1.
- •Завдання 2.
- •Теоретичні відомості
- •Структура наслідування класів
- •Постановка задачі
- •Розробити клас трикутника, чотирикутника, кола, точки
- •Контрольні запитання
- •Лабораторна робота №8
- •Порядок виконання роботи
- •Завдання 1
- •Контрольні запитання
- •Лабораторна робота №9
- •Порядок виконання роботи
- •Завдання 1
- •Теоретичні відомості Множинне спадкування
- •Контрольні запитання
- •Лабораторна робота №10
- •Порядок виконання роботи
- •Завдання 1
- •Теоретичні відомості Шаблони
- •Параметризовані класи
- •Визначені об’єкти-потоки
- •Операції поміщення та вилучення
- •Приклад виконання Завдання з варіанту 2
- •Контрольні запитання.
- •Лабораторна робота №11
- •Порядок виконання
- •Завдання 1
- •Завдання 2
- •Завдання 3 Варіант 1. Задача “Банківське переведення” (дата, час, № рахунку, розмір рахунку).
- •Ітератори
- •Для роботи з вектором необхідно:
- •Приклад роботи з вектором
- •Алгоритми
- •Застосування алгоритмів до вектора
- •Приклад 1 виконання Завдання 1
- •Приклад 2 виконання Завдання 2
- •Приклад 3 виконання завдання №3
- •Контрольні запитання
- •Завдання 1
- •Теоретичні відомості Приклад розробки програми
- •Контрольні запитання
- •Лабораторна робота №13
- •Порядок виконання
- •Завдання 2.
- •Теоретичні відомості
- •Стандартні потоки для базових класів
- •Форматування даних при обмінах з потоками
- •Маніпулятори
- •Приклад розробки програми
- •Контрольні запитання
- •Лабораторна робота №14
- •Порядок виконання
- •Завдання
- •Теоретичні відомості
- •Контрольні запитання
Контрольні запитання
Що таке просте спадкування?
Що таке множинне спадкування?
Процедура ініціалізації множинного спадкування.
Наведіть приклад простого спадкування.
Наведіть приклад множинного спадкування.
Правила множинного спадкування.
Наведіть розширену форму опису конструктора похідного класу, який
наслідує декілька базових класів.
Як викликати функцію базового класу з об’єкта похідного класу, якщо в
похідному класі ця функція була перевизначена?
Якщо в базовому класі функція описана віртуальною, а в похідному класі
ключове слово VIRTUAL при перевизначені цього класу не використано, то чи буде ця функція віртуальною при наслідуванні її класом 3 покоління?
Для чого використовується ключове слово PROTECTED?
Як створити віртуальний конструктор копій?
Лабораторна робота №10
Тема: Особливості розробки шаблонів класів та функцій.
Мета: Набуття навичок студентами в розробці шаблонів класів та функцій.
Порядок виконання роботи
Ознайомитись з теоретичною частиною даної теми.
Розробити структуру шаблону класу відповідно Завдання 1.
Розробити програму з використанням шаблону класу обробки простих даних і одновимірних масивів відповідно Завдання 1 для заданих типів даних.
4. Розробити 2-3 теста для перевірки правильності роботи розробленої програми.
5. Оформити звіт до лабораторної роботи.
Завдання 1
Шаблон класу для перетворення заданого масиву даних таким чином, щоб кожен елемент масиву був отриманий як квадрат кожного елемента (для типів int, float, long).
Шаблон класу для перетворення заданого масиву таким чином, щоб кожен елемент масиву був отриманий як exp кожного елемента (для типів int, float, long).
Шаблон класу для визначення середнього арифметичного елементів заданого масиву (для типів int, float, long).
Шаблон класу для визначення мінімального елементу заданого масиву (для типів int, float, long).
Шаблон класу дял визначення максимального елементу заданого масиву (для типів int, float, long).
Шаблон класу для сортування масиву по зростанню (для типів int, float, long).
Шаблон класу для перетворення масивів з типу 1 до типу 2 (int ––> char).
Шаблон класу для перетворення масивів з типу 1 до типу 2 (char ––> int).
Шаблон класу для вставки в текстовий файл нижче заданої стрічки певної кількості стрічок.
Шаблон класу для видалення з текстового файлу заданої стрічки з заданої позиції.
Теоретичні відомості Шаблони
Подібно тому, як клас фактично являє собою схематичний опис побудови об'єктів, так і шаблон є схематичним описом побудови класів та функцій. Використовуючи шаблони, з'являється можливість створювати узагальнені специфікації для класів та функцій, що найчастіше носять назву параметризованих класів (generic classes) та параметризованих функцій (generic functions). Таким чином, за допомогою реалізації узагальнених функцій можна зменшити розмір та складність програми. Особливо корисними шаблони є саме в бібліотеках класів - тут вони вказують програмісту необхідні специфікації, приховуючи при цьому деталі справжньої реалізації.