- •«Московский государственный технический университет гражданской авиации»
- •Лабораторная работа № 12 Обработка данных текстовых и бинарных файлов.
- •1.1. Цель лабораторной работы
- •1.2. Теоретические сведения Работа с файлами
- •Текстовые и бинарные (двоичные) файлы
- •Потоковый ввод - вывод на базе библиотеки классов
- •Создание потоков
- •Закрытие файла
- •Определение потоков - объектов классов с присоединением потока к физическому файлу
- •1.3. Задание на выполнение лабораторной работы
- •1.4. Порядок выполнения работы
- •1.5. Пример выполнения лабораторной работы
- •Листинг программы
- •1.6. Контрольные вопросы
- •2 Лабораторная работа № 13 Разработка шаблонов абстрактных типов данных с перегрузкой в них ряда операций.
- •Цель лабораторной работы
- •2.2. Теоретические сведения Абстрактные типы данных (атд)
- •Шаблоны функций и классов
- •Шаблоны функций
- •Шаблоны классов
- •Использование шаблона классов
- •Внешнее определение методов и дружественных функций шаблонных классов.
- •2.3 Задание на выполнение лабораторной работы
- •2.4. Порядок выполнения работы
- •2.5. Методические указания
- •2.6. Содержание отчета
- •Контрольные вопросы
- •Варианты заданий лабораторной работы
- •3. Лабораторная работа № 14 Демонстрация использования алгоритмов stl для обработки элементов контейнерных классов, встроенных и пользовательских типов.
- •3.1. Цель лабораторной работы
- •3.2. Теоретические сведения Стандартная библиотека шаблонов (stl)
- •Состав stl
- •Контейнеры
- •Алгоритмы
- •Контейнеры и итераторы.
- •Продолжим рассмотрение контейнеров
- •Общие свойства контейнеров
- •Последовательные контейнеры
- •Методы, которые поддерживают последовательные контейнеры
- •Адаптеры контейнеров
- •Очередь
- •Очередь с приоритетами
- •Ассоциативные контейнеры
- •Словари (map)
- •Словари с дубликатами (multimap)
- •Множество (set)
- •Множества с дубликатами (multiset)
- •Обобщенные алгоритмы stl
- •Не модифицирующие операции с последовательностями
- •Функциональные объекты
- •3.3. Задание на выполнение лабораторной работы
- •3.4. Порядок выполнения работы
- •Часть 1
- •3.5. Методические указания
- •3.6. Контрольные вопросы
- •3.7. Варианты заданий лабораторной работы
- •1.1. Цель лабораторной работы 3
- •1.2. Теоретические сведения 3
3.6. Контрольные вопросы
Назначение, состав STL.
Определение контейнера. Контейнеры STL. Общие свойства и различия контейнеров.
Понятия итератора. Назначение, определение, операции с итераторами. Виды итераторов. Контейнеры и итераторы.
Алгоритмы STL. Как достигается их универсальность, возможность применять функции не только к объектам различных контейнерных классов, но и к массивам, любым последовательностям.
Алгоритмы STL. 4 группы алгоритмов. Дать примеры из каждой группы. Алгоритмы и итераторы.
Алгоритмы и функциональные объекты.
Последовательные и ассоциативные контейнеры.
3.7. Варианты заданий лабораторной работы
№ п/п |
Первый контейнер |
Второй контейнер |
Встроенный тип данных |
1 |
vector |
list |
int |
2 |
list |
deque |
long |
3 |
deque |
stack |
float |
4 |
stack |
queue |
double |
5 |
queue |
vector |
char |
6 |
vector |
stack |
string |
7 |
map |
list |
long |
8 |
multimap |
deque |
float |
9 |
set |
stack |
int |
10 |
multiset |
queue |
char |
11 |
vector |
map |
double |
12 |
list |
set |
int |
13 |
deque |
multiset |
long |
14 |
stack |
vector |
float |
15 |
queue |
map |
int |
16 |
priority-queue
|
stack |
char |
17 |
map |
queue |
char |
18 |
multimap |
list |
int |
19 |
set |
map |
char |
20 |
multiset |
vector |
int |
4. СПИСОК ЛИТЕРАТУРЫ
1) Надейкина Л.А. Программирование на языке высокого уровня. Часть 1. Учебное пособие. - М: МГТУ ГА, 2012, 84 с.
2) Надейкина Л.А. Программирование. Часть 2. Учебное пособие. - М: МГТУ ГА, 2017, 84 с.
3) Надейкина Л.А. Программирование. Обобщенное программирование. Учебное пособие. – Воронеж ООО «МИР», 2019, 80 с.
4) Подбельский В.В. Стандартный Си++. М.: Финансы и статистика, 2008, 688с.
5) Павловская Т.А. С/ С++. Программирование на языке высокого уровня - СПб: Питер, 2011. – 461 с.
СОДЕРЖАНИЕ
1. Лабораторная работа № 12
Обработка данных текстовых и бинарных файлов. 3
1.1. Цель лабораторной работы 3
1.2. Теоретические сведения 3
1.3. Задание на выполнение лабораторной работы 9
1.4. Порядок выполнения работы 10
1.5. Пример выполнения лабораторной работы 10
1.6. Контрольные вопросы 19
2. Лабораторная работа № 13
Разработка шаблонов абстрактных типов данных с перегрузкой в них ряда операций. 19
2.1. Цель лабораторной работы 19
2.2. Теоретические сведения 19
2.3. Задание на выполнение лабораторной работы 26
2.4. Порядок выполнения работы 26
2.5. Методические указания 26
2.6. Содержание отчета 27
2.7. Контрольные вопросы 28
2.8. Варианты заданий лабораторной работы 28
3. Лабораторная работа № 14
Демонстрация использования алгоритмов STL для обработки элементов контейнерных классов, встроенных и пользовательских типов. 30
3.1. Цель лабораторной работы 30
3.2. Теоретические сведения 30
3.3. Задание на выполнение лабораторной работы 45
3.4. Порядок выполнения работы 45
3.5. Методические указания 46
3.6. Контрольные вопросы 46
3.7. Варианты заданий лабораторной работы 47
4. СПИСОК ЛИТЕРАТУРЫ 47
