Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Hellraiserrr
0 / 0 / 0
Регистрация: 09.11.2010
Сообщений: 24
#1

Задача со строками(найти в тексте определенные слова) - C++

26.11.2011, 15:40. Просмотров 905. Ответов 4
Метки нет (Все метки)

Ребят, помогите с задачкой:
В имеющемся словаре найти группы слов, записанных одними и теми же буквами и отличающиеся только их порядком, то есть перестановкой, например, (КОМАР, КОРМА).
Заранее спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.11.2011, 15:40
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Задача со строками(найти в тексте определенные слова) (C++):

Задача на замену слова в тексте - C++
Здравствуйте.Нужно написать программу. Формулировка такая:Разработать программу, которая вводит текст и слово и заменяет самое длинное...

Найти слова в заданном тексте, состоящие из цифр и сумму чисел, которые образуют эти слова - C++
Помогите разобраться пожалуйста: 1. Дан текст. Найти слова, состоящие из цифр и сумму чисел, которые образуют эти слова. 2....

Для заданного достаточно длинного слова найти в имеющемся тексте все слова, в которых использованы только буквы, имеющиеся в заданном слове - C++
Помогите пожалуйста!!!!!Плиззззззззз!!!!! Для заданного достаточно длинного слова найти в имеющемся тексте все слова, в...

Работа со строками. Найти длину самого короткого слова. - C++
Даны слова разделенные пробелами. Найти длину самого короткого слова.

Найти ключевые слова в тексте - C++
Задача: дан файл с произвольным текстом. Найти первые 10 ключевых слов (т.е. таких, которые чаще всего встречаются). Код, приведенный...

Найти слова с онк и енк в тексте - C++
Здравствуйте, решаю лаб. работу по программированию. Задание: в произвольном тексте (взятом и файла) (10 строк, не более 80 символов в...

4
Dmitry_gdv
64 / 64 / 5
Регистрация: 18.03.2010
Сообщений: 353
26.11.2011, 15:54 #2
смотри
можно сохранить первое слово
потом в for() пройтись по его strlen по всем буквам
и сравнить их функцией strpbrk() c каждой буквой второго слова - внутренний фор
если всё совпало - тогда ok.
там даже порядок будет произвольный.
1
Hellraiserrr
0 / 0 / 0
Регистрация: 09.11.2010
Сообщений: 24
26.11.2011, 16:17  [ТС] #3
Цитата Сообщение от Dmitry_gdv Посмотреть сообщение
смотри
можно сохранить первое слово
потом в for() пройтись по его strlen по всем буквам
и сравнить их функцией strpbrk() c каждой буквой второго слова - внутренний фор
если всё совпало - тогда ok.
там даже порядок будет произвольный.
ну я думал алгоритм с массивом строк, запихнуть в каждый элемент по слову и по сравнивать каждый с каждым, так не могу никак разобраться. Массив строк описывается вроде так char str[50][25], а когда сравниваю str[i], там одни ошибки.
0
lavan
53 / 53 / 1
Регистрация: 21.03.2009
Сообщений: 371
26.11.2011, 16:33 #4
Такое задание было буквально пару дней назад,там я дал алгоритм здесь выкладываю реализацию
Здесь данные берутся из файла в предположении что каждая строка содержит одно слово
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
26
27
28
29
30
31
32
#include<iostream>
#include<fstream>
#include<algorithm>
#include<set>
#include<map>
#include<string>
using namespace std;
typedef map<set<char>,string>m_map;
int main() {
    ifstream inf("words.txt");
    string str;
    m_map grmap;
    while(true) {
        if(inf.eof())break;
        getline(inf,str);
        set<char>ch_s(str.begin(),str.end()); //ch_s содержит каждую букву
        //1 раз
        if(!(grmap.insert(make_pair(ch_s,str))).second) {//если такой
            grmap[ch_s]+=" "+str;//ключ уже есть добавить в группу
            //новое слово
        }
    }
    inf.close();
    m_map::iterator it;
    it=grmap.begin();
    for(;it!=grmap.end();it++) {
    string s((*it).first.begin(),(*it).first.end());
        cout<<s<<" "<<(*it).second<<endl;
    }
    cin.get();
    return 0;
}
1
Dmitry_gdv
64 / 64 / 5
Регистрация: 18.03.2010
Сообщений: 353
26.11.2011, 17:46 #5
щас глянем ...
1
26.11.2011, 17:46
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.11.2011, 17:46
Привет! Вот еще темы с ответами:

Найти количество повторений слова в тексте - C++
Розробити алгоритм і програму для визначення відсотка повторення заданого слова в тексті (як роздільники слів може використовуватися...

Найти среднюю длину слова в тексте - C++
Помогите, прога С++. найти среднюю длину слова в тексте( без учета пробелов)

Во введенном тексте найти повторяющиеся слова - C++
Подскажите пожалуйста как решить задачки: Во введенном тексте найти повторяющиеся слова

Найти в тексте все слова анаграммы - C++
Кто может плиз.. Найти в тексте все слова анаграммы.


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.