Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > [C++] Создание словаря


Автор: aToM1 24.1.2007, 15:56
Нужно создать прогу... :
Цели:Открыть файл, считать файл, вывести на экран,
сколько раз использовалось !каждое слово! из этого файла (формат doc , txt и др...).
Пример:
"Война и Мир"
Война - 24567раз.
Мир - 4523 раз.
и т д

Автор: nonstop 24.1.2007, 16:50
а формат doc по-моему до сих пор закрытый
а для txt есть grep

Автор: Rockie 24.1.2007, 17:47
Цитата(aToM1 @  24.1.2007,  15:56 Найти цитируемый пост)
сколько раз использовалось !каждое слово! из этого файла (формат doc , txt и др...).

html, pdf, jpeg, mp3..


Автор: Oleg_Ci 24.1.2007, 20:49
Код

#include <iostream>
#include <iomanip>
#include <fstream>
#include <string>
#include <map>
#include <windows.h>
using namespace std;

////////////// MAIN ////////////////////
int main()
{
    ifstream file("text.txt");
    string buf;
    map<string, int> values;

    // создаём массив слов
    while( file >> buf ){
    for( string::size_type pos = 0; ( pos = buf.find_first_of(",.\'\"[]{};'<>()_+-=\\/?")) != string::npos; )
        buf.erase( pos ); // удаление знаков препинания и др. ненуж. симолов
        AnsiToOem( &buf[0], &buf[0] );
        values[buf]++;
    }

    // выводим на консоль
    for( map<string, int>::iterator pt=values.begin(); pt!=values.end(); ++pt )
        cout << setw(35) << pt->first << "  " << (*pt).second << "\n";

    cin.get();
    return 0;
}

В принципе получилось тоже самое что и http://forum.vingrad.ru/topic-133613/kw-%EF%EE%F1%EA%EE%F0%E5%E5-%E7%E0%E2%F2%F0%E0.html, у zkv

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)