Как можно вывести слово из текста s1, в котором встречается строка s2(Например, s1="qwe rtyu iopas", s2="ty", вывод "rtyu")? Дан текст s1 и строка s2. Выведите слово из текста s1, в котором встречается строка s2. Я смог додуматься только до проверки наличия строки s2 в s1(#include #include using namespace std; void main() { string s_1, s_2; getline(cin,s_1); cin >> s_2; if ((s_1.find(s_2, 0) + 1)) { cout << "true"; } else { cout << "false"; } }
Для того чтобы вывести слово из текста s1, в котором встречается строка s2, можно воспользоваться следующим алгоритмом:
Разделить текст s1 на слова.Для каждого слова проверить, содержит ли оно строку s2.Если какое-то слово содержит строку s2, вывести это слово.
Вот пример реализации на C++:
#include <iostream> #include <string> #include <sstream> using namespace std int main() string s1, s2 getline(cin, s1) cin >> s2 stringstream ss(s1) string word bool found = false while (ss >> word) if (word.find(s2) != string::npos) cout << word << endl found = true break
if (!found) cout << "Word with '" << s2 << "' not found in the text." << endl
return 0 }
Этот код считывает текст s1 и строку s2, затем разделяет текст на отдельные слова и проверяет каждое слово на наличие строки s2. Если слово содержит строку s2, оно выводится на экран. Если ни одно слово не содержит строку s2, выводится сообщение о том, что слово не найдено.
Для того чтобы вывести слово из текста s1, в котором встречается строка s2, можно воспользоваться следующим алгоритмом:
Разделить текст s1 на слова.Для каждого слова проверить, содержит ли оно строку s2.Если какое-то слово содержит строку s2, вывести это слово.Вот пример реализации на C++:
#include <iostream>#include <string>
#include <sstream>
using namespace std
int main()
string s1, s2
getline(cin, s1)
cin >> s2
stringstream ss(s1)
string word
bool found = false
while (ss >> word)
if (word.find(s2) != string::npos)
cout << word << endl
found = true
break
if (!found)
cout << "Word with '" << s2 << "' not found in the text." << endl
return 0
}
Этот код считывает текст s1 и строку s2, затем разделяет текст на отдельные слова и проверяет каждое слово на наличие строки s2. Если слово содержит строку s2, оно выводится на экран. Если ни одно слово не содержит строку s2, выводится сообщение о том, что слово не найдено.