Программирование. Принципы и практика использования C++ Исправленное издание, стр. 302
5. Выведите на экран сумму элементов контейнера
vd6. Выведите на экран разность между суммой элементов контейнеров
vdvi7. Существует стандартный алгоритм reverse, получающий в качестве аргументов последовательность (пару итераторов); поменяйте порядок следования элементов
vdcout8. Вычислите среднее значение элементов в контейнере
vd9. Создайте новый контейнер
vector<double>vd2vd10. Отсортируйте контейнер
vdКонтрольные вопросы
1. Приведите примеры полезных алгоритмов из библиотеки STL?
2. Что делает алгоритм
find()3. Что делает алгоритм
count_if()4. Что алгоритм
sort(b,e)5. Как алгоритмы из библиотеки STL получают контейнеры в качестве аргумента ввода?
6. Как алгоритмы из библиотеки STL получают контейнеры в качестве аргумента вывода?
7. Как алгоритмы из библиотеки STL обозначают ситуации “не найден” или “сбой”?
8. Что такое функция-объект?
9. Чем функция-объект отличается от функции?
10. Что такое предикат?
11. Что делает алгоритм
accumulate()12. Что делает алгоритм
inner_product()13. Что такое ассоциативный контейнер? Приведите не менее трех примеров.
14. Является ли класс
list15. Сформулируйте принцип организации бинарного дерева.
16. Что такое (примерно) сбалансированное дерево?
17. Сколько места занимает элемент в контейнере
map18. Сколько места занимает элемент в контейнере
vector19. Зачем нужен контейнер
unordered_mapmap20. Чем контейнер
setmap21. Чем контейнер
multimapmap22. Зачем нужен алгоритм
copy()23. Что такое бинарный поиск?
Термины

Упражнения
1. Перечитайте главу и выполните все упражнения из врезок ПОПРОБУЙТЕ, если вы еще не сделали этого.
2. Найдите надежный источник документации по библиотеке STL и перечислите все стандартные алгоритмы.
3. Самостоятельно реализуйте алгоритм
count()4. Самостоятельно реализуйте алгоритм
count_if()5. Что нам следовало бы сделать, если бы мы не могли вернуть итератор
end()find()count()6. В примере класса
FruitFruitsetset<Fruit*>set<Fruit*Fruit_comparison>7. Напишите функцию бинарного поиска для класса
vector<int>list<string>8. Вернитесь к примеру, связанному с подсчетом частоты слов из раздела 21.6.1, и модифицируйте его, чтобы слова выводились в порядке следования частот, а не в лексикографическом порядке. Например, на экран должна выводиться строка
3: C++C++: 39. Определите класс
Ordervector<Purchase>Purchasenameunit_pricecountOrderOrderOrdervector<Order>Orderlist<Order>std::merge()10. Вычислите общее количество заказов в двух файлах из предыдущего упражнения. Значение отдельного объекта класса
Purchaseunitprice*count11. Разработайте графический пользовательский интерфейс для ввода заказов из файла.
12. Разработайте графический пользовательский интерфейс для запроса файла заказов; например, “Найти все заказы от
JoeHardwareClothing