Форум программистов, компьютерный форум CyberForum.ru

Ассоциативные контейнеры - C++

Восстановить пароль Регистрация
 
Тина_Ливингстон
0 / 0 / 0
Регистрация: 01.11.2011
Сообщений: 59
04.04.2012, 21:48     Ассоциативные контейнеры #1
В текстовом файле хранятся слова:
- вывести список различных слов (set);
- подсчитать количество вхождений каждого слова (map<string,int>).

Помогите пожалуйста!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.04.2012, 21:48     Ассоциативные контейнеры
Посмотрите здесь:

C++ контейнеры
C++ Контейнеры
Преобразовать программу. Ассоциативные котейнеры. C++
Ассоциативные контейнеры(алгоритмы)с++ C++
Ассоциативные контейнеры STL C++
Контейнеры с++ C++
Контейнеры C++
Ассоциативные контейнеры, не происходит замена C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
rangerx
1908 / 1517 / 139
Регистрация: 31.05.2009
Сообщений: 2,876
04.04.2012, 22:19     Ассоциативные контейнеры #2
Цитата Сообщение от Тина_Ливингстон Посмотреть сообщение
- вывести список различных слов (set);
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <iostream>
#include <fstream>
#include <iterator>
#include <algorithm>
#include <string>
#include <set>
 
int main()
{
    typedef std::istream_iterator<std::string> string_in_iter_t;
    typedef std::ostream_iterator<std::string> string_out_iter_t;
    // ----------
 
    const char* filename = "file.txt";
    std::ifstream in_file(filename);
 
    if(!in_file.is_open())
    {
        std::cerr << "can`t open file \"" << filename << "\"\n";
        return 1;
    }
 
    std::set<std::string> s(string_in_iter_t(in_file), (string_in_iter_t()));
    std::copy(s.begin(), s.end(), string_out_iter_t(std::cout, "\n"));
}
Добавлено через 13 минут
Цитата Сообщение от Тина_Ливингстон Посмотреть сообщение
- подсчитать количество вхождений каждого слова (map<string,int>).
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <iostream>
#include <fstream>
#include <string>
#include <map>
 
int main()
{
    const char* filename = "file.txt";
    std::ifstream in_file(filename);
 
    if(!in_file.is_open())
    {
        std::cerr << "can`t open file \"" << filename << "\"\n";
        return 1;
    }
 
    std::map<std::string, int> m;
 
    std::string token;
    while(in_file >> token)
        ++m[token];
 
    for(std::map<std::string, int>::iterator iter = m.begin(); iter != m.end(); ++iter)
        std::cout << iter->first << " -> " << iter->second << '\n';
}
Yandex
Объявления
04.04.2012, 22:19     Ассоциативные контейнеры
Ответ Создать тему
Опции темы

Текущее время: 04:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru