Читаем C++ для начинающих полностью

cout "после copy_backward( begin+1, end-3, end ):\n";

for_each( svec.begin(), svec.end(), print_elements() );

cout "\n";

}

<p>Алгоритм count()</p>

template class InputIterator, class Type

iterator_traitsInputIterator::distance_type

count( InputIterator first,

InputIterator last, const Type& value );

count() сравнивает каждый элемент со значением value в диапазоне, ограниченном парой итераторов [first,last), с помощью оператора равенства. Алгоритм возвращает число элементов, равных value. (Отметим, что в имеющейся у нас реализации стандартной библиотеки поддерживается более ранняя спецификация count().)

#include algorithm

#include string

#include list

#include iterator

#include assert.h

#include iostream.h

#include fstream.h

/***********************************************************************

* прочитанный текст:

Alice Emma has long flowing red hair. Her Daddy says

when the wind blows through her hair, it looks almost alive,

like a fiery bird in flight. A beautiful fiery bird, he tells her,

magical but untamed. "Daddy, shush, there is no such thing,"

she tells him, at the same time wanting him to tell her more.

Shyly, she asks, "I mean, Daddy, is there?"

************************************************************************

* программа выводит:

* count(): fiery встречается 2 раз(а)

************************************************************************

*/

int main()

{

ifstream infile( "alice_emma" );

assert ( infile != 0 );

liststring,allocator textlines;

typedef liststring,allocator::difference_type diff_type;

istream_iterator string, diff_type instream( infile ),

eos;

copy( instream, eos, back_inserter( textlines ));

string search_item( "fiery" );

/********************************************************************* *

примечание: ниже показан интерфейс count(), принятый в

* стандартной библиотеке. В текущей реализации библиотеки

* от RogueWave поддерживается более ранняя версия, в которой

* типа distance_type еще не было, так что count()

* возвращала результат в последнем аргументе

*

* вот как должен выглядеть вызов:

*

* typedef iterator_traitsInputIterator::

*distance_type dis_type;

*

* dis_type elem_count;

* elem_count = count( textlines.begin(), textlines.end(),

* search_item );

***********************************************************************

int elem_count = 0;

liststring,allocator::iterator

ibegin = textlines.begin(),

iend = textlines.end();

// устаревшая форма count()

count( ibegin, iend, search_item, elem_count );

cout "count(): " search_item

" встречается " elem_count " раз(а)\n";

}

<p>Алгоритм count_if()</p>

template class InputIterator, class Predicate

iterator_traitsInputIterator::distance_type

Перейти на страницу:

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных