0 / 0 / 0
Регистрация: 06.05.2019
Сообщений: 15
1

Работа со строками

06.05.2019, 08:43. Показов 1373. Ответов 4
Метки нет (Все метки)

Помогите с заданием ПС)))

Даны 4 последовательности, каждая из 3 - х символов и текст,
заканчивающийся точкой.Если в тексте встречаются подряд 1 - я и 2 - я последовательности,
то заменить их на 3 - ю и 4 - ю, если подряд 1 - я и 3 - я,
то заменить их на 4 - ю и 2 - ю, если встречается 4 - я,
то удалить ее.Вывести полученный текст.
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.05.2019, 08:43
Ответы с готовыми решениями:

Работа со строками. Функции работы со строками
Дана строка символов. В заданном тексте определить позицию первой точки ‘ . ‘.

Работа со строками, заполнить компоненты строками из файла
Привет! Нужна помощь в заполнении формы В общем, есть форма отправки письма. У нее есть 2 функции,...

Работа со строками(операции над строками)
Пусть дана последовательность, содержащая от 2 до 50 слов, в каждом из которых от 1 до 8 строчных...

Задание по темам: ООП, исключения, работа со строками (возможно применение коллекций List), работа с компоновщиком
ТЯЖЕЛО РАБОТАТЬ С КОМПОНОВЩИКОМ. БУДУ РАД ВАШИМ ОТВЕТАМ. 1. Ознакомиться с принципом работы...

4
5233 / 2887 / 1208
Регистрация: 07.02.2019
Сообщений: 7,284
06.05.2019, 10:25 2
Лучший ответ Сообщение было отмечено Netvwork как решение

Решение

Netvwork,
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
#include <iostream>
#include <regex>
 
int main()
{
    std::string text{"aaaaaaacccccccccbbbbbbbbbbbbbaaaaabbbbbbbbdddddddddaaaaaaaacccc"};
    std::string seqs[4]{ "aaa", "bbb", "ccc", "ddd" };
 
    std::string result;
    std::regex rgx{ "(" + seqs[0] + seqs[1] + ")|(" + seqs[0] + seqs[2] + ")|(" + seqs[3] + ")" };
    for (
        auto sub = std::sregex_iterator{ text.begin(), text.end(), rgx };
        sub != std::sregex_iterator{};
        ++sub
        )
    {
        result += sub->prefix();
        if ((*sub)[1].matched)
            result += seqs[2] + seqs[3];
        else if ((*sub)[2].matched)
            result += seqs[3] + seqs[1];
        if (std::next(sub) == std::sregex_iterator{})
            result += sub->suffix();
    }
 
    std::cout << result;
}
1
0 / 0 / 0
Регистрация: 06.05.2019
Сообщений: 15
09.05.2019, 08:57  [ТС] 3
спасибо за код, но можете немного пояснить программу?
оно удаляет 4-е слово но не заменяет последовательность)
жду ответа...
0
5233 / 2887 / 1208
Регистрация: 07.02.2019
Сообщений: 7,284
09.05.2019, 10:36 4
Цитата Сообщение от Netvwork Посмотреть сообщение
оно удаляет 4-е слово но не заменяет последовательность)
визуально не очень удачный выбор строк, но вы ошибаетесь, делает именно то, что в задании
0
0 / 0 / 0
Регистрация: 06.05.2019
Сообщений: 15
09.05.2019, 11:36  [ТС] 5
Дааа, огромное спасибо! А вы учитесь? или уже опытный ,,,
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.05.2019, 11:36
Помогаю со студенческими работами здесь

работа со строками
как разбить строку &quot;x y z OR x y z&quot; на 2 другие, чтобы в них было тока 'x y z' и 'x y z&quot;...

Работа со строками
Настраиваю форум и хочу немного оптимизировать тексты. Форум бесплатный и доступны только шаблоны...

Работа со строками
Есть допустим строка var str=&quot;http://site.ru/article#section6&quot;; Нужно проверить есть ли в этой...

работа со строками
Здравствуйте! Помогите новичку!!!!!!! Есть запрос &quot;ВыборПечати&quot;&quot;на базе двух таблиц: &quot;Ф.И.О&quot; и...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru