Лабораторные работы 2 семестр / Р2.4 Элементы STL / Лабораторная работа 2.4
.2.docЛабораторная работа ЛР 2.4.2
АССОЦИАТИВНЫЕ КОНТЕЙНЕРЫ
Разработайте программу на языке С++, используя стандартную библиотеку шаблонов.
Вариант 1. Ассоциативные контейнеры. Словари (map).
Напишите законченную программу, в которой создайте пустой словарь – телефонную книгу для хранения записей в лексикографическом порядке. Заполните телефонную книгу данными из файла map.dat. Каждая строка файла хранит фамилию абонента и телефонный номер-число, разделенные пробелом. Выведите на экран содержимое телефонной книги. Дополните телефонную книгу новой записью и измените один из номеров телефонной книги. Снова выведите на экран содержимое телефонной книги. Выполните поиск в словаре существующего и несуществующего элемента и выведите результат поиска на экран.
Используйте только средства стандартной библиотеки языка С++ (потоковый ввод-вывод, классы string, map).
Вариант 2. Ассоциативные контейнеры. Словари (map).
Напишите законченную программу, в которой создайте две пустых телефонных книги для хранения записей в лексикографическом порядке. Заполните телефонные книги данными из файла map1.dat и map2.dat. Каждая строка файла хранит фамилию абонента и телефонный номер-число, разделенные пробелом. Выведите на экран содержимое телефонных книг. Выполните обмен словарей и выведите их на экран. Очистите словари.
Используйте только средства стандартной библиотеки языка С++ (потоковый ввод-вывод, классы string, map).
Вариант 3. Ассоциативные контейнеры. Словари с дубликатами (multimap).
Напишите законченную программу, в которой создайте пустую телефонную книгу – словарь с дубликатами - для хранения записей в лексикографическом порядке (фамилия абонента – ключ, число - значение, номер телефона). С помощью метода insert( ) заполните телефонную книгу данными, так, чтобы телефонная книга содержала дубликаты с одинаковыми номерами.. Выведите на экран содержимое телефонной книги. Выполните поиск в словаре информации с заданными ключами и выведите результаты поиска на экран (ключ с дубликатами, без дубликатов и отсутствующий ключ).
Используйте только средства стандартной библиотеки языка С++ (потоковый ввод-вывод, классы string, map).
Вариант 4. Ассоциативные контейнеры. Множества (set).
Напишите законченную программу, в которой с помощью подходящего конструктора создайте множество и инициализируйте его четырьмя строковыми значениями. С помощью итераторов выведите содержимое созданного множества на экран. Добавьте в множество еще два строковых значения, одно из которых уже имеется в множестве. Еще раз выведите содержимое множества на экран.
Используйте только средства стандартной библиотеки языка С++ (потоковый ввод-вывод, классы string, set).
Вариант 5. Ассоциативные контейнеры. Множества с дубликатами (multiset).
Напишите законченную программу, в которой с помощью подходящего конструктора создайте множество с дубликатами и инициализируйте его четырьмя строковыми значениями. С помощью итераторов выведите содержимое созданного множества на экран. Добавьте в множество еще два строковых значения, одно из которых уже имеется в множестве. Еще раз выведите содержимое множества на экран.
Используйте только средства стандартной библиотеки языка С++ (потоковый ввод-вывод, классы string, set).
Вариант 6. Ассоциативные контейнеры. Словари (map).
Напишите законченную программу, в которой создайте пустой словарь – телефонную книгу для хранения записей в лексикографическом порядке. Заполните телефонную книгу данными из файла map.dat. Каждая строка файла хранит фамилию абонента и телефонный номер-число, разделенные пробелом. Выведите на экран содержимое телефонной книги. Дополните телефонную книгу новой записью и измените один из номеров телефонной книги. Снова выведите на экран содержимое телефонной книги. Выполните поиск в словаре существующего и несуществующего элемента и выведите результат поиска на экран.
Используйте только средства стандартной библиотеки языка С++ (потоковый ввод-вывод, классы string, map).
Вариант 7. Ассоциативные контейнеры. Словари (map).
Напишите законченную программу, в которой создайте две пустых телефонных книги для хранения записей в лексикографическом порядке. Заполните телефонные книги данными из файла map1.dat и map2.dat. Каждая строка файла хранит фамилию абонента и телефонный номер-число, разделенные пробелом. Выведите на экран содержимое телефонных книг. Выполните обмен словарей и выведите их на экран. Очистите словари.
Используйте только средства стандартной библиотеки языка С++ (потоковый ввод-вывод, классы string, map).
Вариант 8. Ассоциативные контейнеры. Словари с дубликатами (multimap).
Напишите законченную программу, в которой создайте пустую телефонную книгу – словарь с дубликатами - для хранения записей в лексикографическом порядке (фамилия абонента – ключ, число - значение, номер телефона). С помощью метода insert( ) заполните телефонную книгу данными, так, чтобы телефонная книга содержала дубликаты с одинаковыми номерами.. Выведите на экран содержимое телефонной книги. Выполните поиск в словаре информации с заданными ключами и выведите результаты поиска на экран (ключ с дубликатами, без дубликатов и отсутствующий ключ).
Используйте только средства стандартной библиотеки языка С++ (потоковый ввод-вывод, классы string, map).
Вариант 9. Ассоциативные контейнеры. Множества (set).
Напишите законченную программу, в которой с помощью подходящего конструктора создайте множество и инициализируйте его четырьмя строковыми значениями. С помощью итераторов выведите содержимое созданного множества на экран. Добавьте в множество еще два строковых значения, одно из которых уже имеется в множестве. Еще раз выведите содержимое множества на экран.
Используйте только средства стандартной библиотеки языка С++ (потоковый ввод-вывод, классы string, set).
Вариант 10. Ассоциативные контейнеры. Множества с дубликатами (multiset).
Напишите законченную программу, в которой с помощью подходящего конструктора создайте множество с дубликатами и инициализируйте его четырьмя строковыми значениями. С помощью итераторов выведите содержимое созданного множества на экран. Добавьте в множество еще два строковых значения, одно из которых уже имеется в множестве. Еще раз выведите содержимое множества на экран.
Используйте только средства стандартной библиотеки языка С++ (потоковый ввод-вывод, классы string, set).
Вариант 11. Ассоциативные контейнеры. Словари (map).
Напишите законченную программу, в которой создайте пустой словарь – телефонную книгу для хранения записей в лексикографическом порядке. Заполните телефонную книгу данными из файла map.dat. Каждая строка файла хранит фамилию абонента и телефонный номер-число, разделенные пробелом. Выведите на экран содержимое телефонной книги. Дополните телефонную книгу новой записью и измените один из номеров телефонной книги. Снова выведите на экран содержимое телефонной книги. Выполните поиск в словаре существующего и несуществующего элемента и выведите результат поиска на экран.
Используйте только средства стандартной библиотеки языка С++ (потоковый ввод-вывод, классы string, map).
Вариант 12. Ассоциативные контейнеры. Словари (map).
Напишите законченную программу, в которой создайте две пустых телефонных книги для хранения записей в лексикографическом порядке. Заполните телефонные книги данными из файла map1.dat и map2.dat. Каждая строка файла хранит фамилию абонента и телефонный номер-число, разделенные пробелом. Выведите на экран содержимое телефонных книг. Выполните обмен словарей и выведите их на экран. Очистите словари.
Используйте только средства стандартной библиотеки языка С++ (потоковый ввод-вывод, классы string, map).
Вариант 13. Ассоциативные контейнеры. Словари с дубликатами (multimap).
Напишите законченную программу, в которой создайте пустую телефонную книгу – словарь с дубликатами - для хранения записей в лексикографическом порядке (фамилия абонента – ключ, число - значение, номер телефона). С помощью метода insert( ) заполните телефонную книгу данными, так, чтобы телефонная книга содержала дубликаты с одинаковыми номерами.. Выведите на экран содержимое телефонной книги. Выполните поиск в словаре информации с заданными ключами и выведите результаты поиска на экран (ключ с дубликатами, без дубликатов и отсутствующий ключ).
Используйте только средства стандартной библиотеки языка С++ (потоковый ввод-вывод, классы string, map).
Вариант 14. Ассоциативные контейнеры. Множества (set).
Напишите законченную программу, в которой с помощью подходящего конструктора создайте множество и инициализируйте его четырьмя строковыми значениями. С помощью итераторов выведите содержимое созданного множества на экран. Добавьте в множество еще два строковых значения, одно из которых уже имеется в множестве. Еще раз выведите содержимое множества на экран.
Используйте только средства стандартной библиотеки языка С++ (потоковый ввод-вывод, классы string, set).
Вариант 15. Ассоциативные контейнеры. Множества с дубликатами (multiset).
Напишите законченную программу, в которой с помощью подходящего конструктора создайте множество с дубликатами и инициализируйте его четырьмя строковыми значениями. С помощью итераторов выведите содержимое созданного множества на экран. Добавьте в множество еще два строковых значения, одно из которых уже имеется в множестве. Еще раз выведите содержимое множества на экран.
Используйте только средства стандартной библиотеки языка С++ (потоковый ввод-вывод, классы string, set).
Вариант 16. Ассоциативные контейнеры. Словари (map).
Напишите законченную программу, в которой создайте пустой словарь – телефонную книгу для хранения записей в лексикографическом порядке. Заполните телефонную книгу данными из файла map.dat. Каждая строка файла хранит фамилию абонента и телефонный номер-число, разделенные пробелом. Выведите на экран содержимое телефонной книги. Дополните телефонную книгу новой записью и измените один из номеров телефонной книги. Снова выведите на экран содержимое телефонной книги. Выполните поиск в словаре существующего и несуществующего элемента и выведите результат поиска на экран.
Используйте только средства стандартной библиотеки языка С++ (потоковый ввод-вывод, классы string, map).
Вариант 17. Ассоциативные контейнеры. Словари (map).
Напишите законченную программу, в которой создайте две пустых телефонных книги для хранения записей в лексикографическом порядке. Заполните телефонные книги данными из файла map1.dat и map2.dat. Каждая строка файла хранит фамилию абонента и телефонный номер-число, разделенные пробелом. Выведите на экран содержимое телефонных книг. Выполните обмен словарей и выведите их на экран. Очистите словари.
Используйте только средства стандартной библиотеки языка С++ (потоковый ввод-вывод, классы string, map).
Вариант 18. Ассоциативные контейнеры. Словари с дубликатами (multimap).
Напишите законченную программу, в которой создайте пустую телефонную книгу – словарь с дубликатами - для хранения записей в лексикографическом порядке (фамилия абонента – ключ, число - значение, номер телефона). С помощью метода insert( ) заполните телефонную книгу данными, так, чтобы телефонная книга содержала дубликаты с одинаковыми номерами.. Выведите на экран содержимое телефонной книги. Выполните поиск в словаре информации с заданными ключами и выведите результаты поиска на экран (ключ с дубликатами, без дубликатов и отсутствующий ключ).
Используйте только средства стандартной библиотеки языка С++ (потоковый ввод-вывод, классы string, map).
Вариант 19. Ассоциативные контейнеры. Множества (set).
Напишите законченную программу, в которой с помощью подходящего конструктора создайте множество и инициализируйте его четырьмя строковыми значениями. С помощью итераторов выведите содержимое созданного множества на экран. Добавьте в множество еще два строковых значения, одно из которых уже имеется в множестве. Еще раз выведите содержимое множества на экран.
Используйте только средства стандартной библиотеки языка С++ (потоковый ввод-вывод, классы string, set).
Вариант 20. Ассоциативные контейнеры. Множества с дубликатами (multiset).
Напишите законченную программу, в которой с помощью подходящего конструктора создайте множество с дубликатами и инициализируйте его четырьмя строковыми значениями. С помощью итераторов выведите содержимое созданного множества на экран. Добавьте в множество еще два строковых значения, одно из которых уже имеется в множестве. Еще раз выведите содержимое множества на экран.
Используйте только средства стандартной библиотеки языка С++ (потоковый ввод-вывод, классы string, set).
Вариант 21. Ассоциативные контейнеры. Словари (map).
Напишите законченную программу, в которой создайте пустой словарь – телефонную книгу для хранения записей в лексикографическом порядке. Заполните телефонную книгу данными из файла map.dat. Каждая строка файла хранит фамилию абонента и телефонный номер-число, разделенные пробелом. Выведите на экран содержимое телефонной книги. Дополните телефонную книгу новой записью и измените один из номеров телефонной книги. Снова выведите на экран содержимое телефонной книги. Выполните поиск в словаре существующего и несуществующего элемента и выведите результат поиска на экран.
Используйте только средства стандартной библиотеки языка С++ (потоковый ввод-вывод, классы string, map).
Вариант 22. Ассоциативные контейнеры. Словари (map).
Напишите законченную программу, в которой создайте две пустых телефонных книги для хранения записей в лексикографическом порядке. Заполните телефонные книги данными из файла map1.dat и map2.dat. Каждая строка файла хранит фамилию абонента и телефонный номер-число, разделенные пробелом. Выведите на экран содержимое телефонных книг. Выполните обмен словарей и выведите их на экран. Очистите словари.
Используйте только средства стандартной библиотеки языка С++ (потоковый ввод-вывод, классы string, map).
Вариант 23. Ассоциативные контейнеры. Словари с дубликатами (multimap).
Напишите законченную программу, в которой создайте пустую телефонную книгу – словарь с дубликатами - для хранения записей в лексикографическом порядке (фамилия абонента – ключ, число - значение, номер телефона). С помощью метода insert( ) заполните телефонную книгу данными, так, чтобы телефонная книга содержала дубликаты с одинаковыми номерами.. Выведите на экран содержимое телефонной книги. Выполните поиск в словаре информации с заданными ключами и выведите результаты поиска на экран (ключ с дубликатами, без дубликатов и отсутствующий ключ).
Используйте только средства стандартной библиотеки языка С++ (потоковый ввод-вывод, классы string, map).
Вариант 24. Ассоциативные контейнеры. Множества (set).
Напишите законченную программу, в которой с помощью подходящего конструктора создайте множество и инициализируйте его четырьмя строковыми значениями. С помощью итераторов выведите содержимое созданного множества на экран. Добавьте в множество еще два строковых значения, одно из которых уже имеется в множестве. Еще раз выведите содержимое множества на экран.
Используйте только средства стандартной библиотеки языка С++ (потоковый ввод-вывод, классы string, set).
Вариант 25. Ассоциативные контейнеры. Множества с дубликатами (multiset).
Напишите законченную программу, в которой с помощью подходящего конструктора создайте множество с дубликатами и инициализируйте его четырьмя строковыми значениями. С помощью итераторов выведите содержимое созданного множества на экран. Добавьте в множество еще два строковых значения, одно из которых уже имеется в множестве. Еще раз выведите содержимое множества на экран.
Используйте только средства стандартной библиотеки языка С++ (потоковый ввод-вывод, классы string, set).