Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.03.2019, 11:15   #1
Tigressfree
Новичок
Джуниор
 
Регистрация: 20.03.2019
Сообщений: 1
По умолчанию Изменить программный код

Здравствуйте. У одного человека есть задание. С клавиатуры вводятся две строки,содержащие некоторые слова. Слова перечислены через запятую. Исключить из первой строки слова, входящие во вторую строку. Слова должны сравниваться без учета регистра символов.

Пример ввода:

1.word,cat,DOG,BALL

2. Word,dog,processor,memory,programmi ng

Результат: сat,ball

Исходные строки вводятся с клавиатуры.Обработка строк должна осуществляться посимвольно, использование функций форматированного ввода (scanf sscanf не допускается)

Мне удалось найти программный код в интернете:

Код:
#include <iostream>
#include <regex>
#include <string>
#include <algorithm>
 
int main()
{
    std::string s1{ "world,cat,DOG,BALL" };
    std::string s2{ "World,dog,processor,memory,programming" };
    std::regex r1{"[[:alpha:]]+"};
    std::for_each(std::sregex_iterator{ s2.begin(), s2.end(), r1 }, {}, [&s1](auto const& mr) 
    {
        s1 = std::regex_replace(s1, std::regex{ mr.str(), std::regex_constants::icase }, "");
    });
 
    std::cout << s1 << std::endl;
 
}
Всё работает и строки сравниваются, только надо чтобы в конечном итоге было так. Надо чтобы при запуске программы было написано: "Введите первую строку:" Человек вводит word,cat,DOG,BALL, нажимает ентер и возникает надпись: "Введите вторую строку:" Человек вводит Word,dog,processor,memory,programmi ng, нажимает ентер и высвечивается правильный ответ повторяющиеся слова из этих строк. В коде, который приведён мною выше высвечивается в ответе ,cat,,BALL, поэтому если можно надо чтобы не было первой запятой и там после cat чтобы тоже была одна. Если можно напишите пожалуйста кто-нибудь реально работающий программный код. И если можно чтобы слова была возможность не только вводить с клавиатуры, но и скопировать вставить, чтобы не всегда набирать.


______________________
Используйте тег [CODE] (кнопка [CODE] в форме сообщения) при вставке кода на форум. Подробнее в FAQ

Последний раз редактировалось Serge_Bliznykov; 21.03.2019 в 11:22.
Tigressfree вне форума Ответить с цитированием
Старый 22.03.2019, 10:14   #2
Bugrimov
C/C++, Java
Участник клуба
 
Аватар для Bugrimov
 
Регистрация: 28.03.2012
Сообщений: 1,680
По умолчанию

А cin допускается?))))
"Keep it simple" - придерживайтесь простоты!
Уильям Оккам - "Не следует множить сущее без необходимости"
Сложность - враг простоты и удобства!
Bugrimov вне форума Ответить с цитированием
Старый 22.03.2019, 10:28   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Цитата:
Сообщение от Bugrimov Посмотреть сообщение
А cin допускается?))))
если допускается (и используется) std::cout
то и std::cin явно можно использовать.

я, конечно, не уверен, что человек, который не может вставить в код строчки вида
Код:
std::cout << "введите строку: ";
std::cin >> s1;
сможет сдать преподу решение задачи, использующее регэкспы и весьма хитрые итераторы.
Но это уже совсем другая история, верно?
Serge_Bliznykov вне форума Ответить с цитированием
Старый 23.03.2019, 08:01   #4
alexcoder
Форумчанин
 
Регистрация: 31.05.2009
Сообщений: 786
По умолчанию

Извиняюсь за оффтоп, но
Цитата:
Сообщение от Tigressfree Посмотреть сообщение
У одного человека есть задание
https://bash.im/quote/397014

Все равно не даст!
Помощь с программами:
vk.com/alexcoder1
e-mail: informatik101@mail.ru
alexcoder вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите изменить код(он работает, но нужно изменить) Programmer_1 Помощь студентам 4 17.09.2018 20:05
программный код в matlab analiz Помощь студентам 0 05.12.2016 17:13
Реестр - Необходимо изменить действие по умолчанию для .reg файлов(«Изменить» вместо «Объединить»). ACE Valery Windows 7 30.11.2010 23:33
программный клик mardocx JavaScript, Ajax 1 07.11.2010 21:02
программный код в VB 6.0 Julia220992 Помощь студентам 4 29.04.2010 23:01