Void main(). // Створюється порожня множина

{

int a[4] = {4,2,1,2};

// Створюється порожня множина

seti s1;

// Множина створюється копіюванням масиву

seti s2(a, a + 4);

seti s3(s2);// Працює конструктор копіювання

s2.insert(10);// Вставка елементів

s2.insert(6);

for ( i = s2.begin(); i != s2.end();i++)

cout << *i << " " ;

cout << endl;

// Змінна для зберігання результату equal_range;

pair <seti::iterator, seti::iterator > p;

p = s2.equal_range(2);

cout << *(p.first) <<" "<< *(p.second) << endl;

p = s2.equal_range(5);

cout << *(p.first) <<" "<< *(p.second) << endl;

}

 

Результат роботи програми:

 

1 2 4 6 10

2 4

6 6

 

Як і для словника, елементи в множині зберігаються відсортованими. Елементи, що повторюються, в множину не заносяться.

Приведена нижче програма формує для заданого текстового файлу вказівку, тобто впорядкований за абеткою список слів, що зустрічаються в ньому, для кожного з яких показані номери рядків, що містять це слово. Якщо слово зустрічається в рядку більше одного разу, номер рядка виводиться один раз.

 

#include <iostream>

#include <fstream>

#include <iomanip>

#include <string>

#include <set>

#include <map>

using namespace std;

 

typedef set<int, less<int> > set_i;

typedef map<string, set_i, less<string> > map_ss;

bool wordread (ifstream &in,string &word, int &num)

{

char ch;

// Пропуск до першої букви:

for (;;)

{

in.get(ch);

if (in.fail()) return false;

if (isalpha(ch) || ch == '_') break;

if (ch == '\n') num++;

}

word = "";

// Пошук кінця слова:

do

{

word += tolower(ch);

in.get(ch);

}

while (!in.fail() && (isalpha(ch) || ch == '_'));

 

if (in.fail()) return false;

in.putback(ch); // Якщо символ – '\n'

return true;

}

 








Дата добавления: 2014-12-26; просмотров: 550;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.004 сек.