Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 20.12.2017
Сообщений: 36
1

Обработка строк

06.03.2018, 09:32. Показов 860. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Если можно с подробным объяснением,что бы разобраться.
ЗАДАНИЕ:
Дана последовательность, содержащая от 1 до 30 слов, в каждом из которых от 1 до 5 строчных латинских букв; между соседними словами – запятая, за последним словом – точка. Вывести все различные слова, указав для каждого из них число его вхождений в последовательность.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.03.2018, 09:32
Ответы с готовыми решениями:

Обработка строк
Пожалуйста, подскажите, как одновременно обработать две строки так, чтобы найти самые длинные...

Обработка строк
Есть задание: Написать консольное приложение, реализующее полученный вариант задания, используя...

Обработка строк
Доброго времени суток! Уважаемые форумчане! Прошу помощи в написании программы, так проблемы с...

Обработка строк
С помощью текстового редактора «Блокнот» создать файл, содержащий текст, длина кото¬рого не...

1
2848 / 1997 / 986
Регистрация: 21.12.2010
Сообщений: 3,705
Записей в блоге: 10
06.03.2018, 10:06 2
Лучший ответ Сообщение было отмечено Dmitry usenko как решение

Решение

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <string>
#include <regex>
#include <unordered_map>
#include <iomanip>
 
 
int main()
{
    std::string str("aaa, bbbb, cc, c, cc, aaa, cc."); // исходная строка
    std::regex reg("\\b[[:alpha:]]{1,5}\\b"); // слово длиной от 1 до 5 букв
    std::unordered_map<std::ssub_match, int, std::hash<std::string>> um; // контейнер (типа ключ-значение) для хранения найденных слов и количества их появления в строке
    // цикл находит в строке слова и кладёт в контейнер(ключом является слово а значением - количество появлений слова в строке)
    for (std::sregex_token_iterator ib(str.begin(), str.end(), reg), ie; ib != ie; ++ib) 
    {
        ++um[*ib];
    }
    // вывод контейнера на экран
    for (auto const& pr : um)
    {
        std::cout << std::setw(8) << std::left << pr.first << pr.second << std::endl;
    }
}
0
06.03.2018, 10:06
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.03.2018, 10:06
Помогаю со студенческими работами здесь

Обработка строк
Не реализована возможность ввода и сохранения нескольких строк. Функция main содержит два...

Обработка строк
Всем привет!!!Помогите пожалуйста в решении этой задачи!!!!! Разработать алгоритм и программу...

Обработка строк
Ребята помогите написать программу, вырезающую из строки все цифры.

Обработка строк
Помогите,плиз! Нужно обработать строку по условию: 1.Вычислить количество специальных символов(не...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru