Предмет: Информатика,
автор: zwiros
Напишите пожалуйста программу в c++! Дано предложение. Вывести на экран слова, начинающиеся и оканчивающиеся на одну и ту же букву.
Ответы
Автор ответа:
0
#include <iostream>
#include <string>
using namespace std;
#define IN 1 //внутри слова
#define OUT 0 //вне слова
int main()
{
string s;
getline(cin, s);
int state = OUT; //позиция
s = ' ' + s + ' ';
int k = 0; //позиция начала слова
for (int i = 0; i < s.size(); i++)
if (s[i] == ' ') {
if (state == IN && s[k] == s[i - 1])
cout << s.substr(k, i - k + 1) << endl;
state = OUT;
} else if (state == OUT) {
k = i;
state = IN;
}
return 0;
}
#include <string>
using namespace std;
#define IN 1 //внутри слова
#define OUT 0 //вне слова
int main()
{
string s;
getline(cin, s);
int state = OUT; //позиция
s = ' ' + s + ' ';
int k = 0; //позиция начала слова
for (int i = 0; i < s.size(); i++)
if (s[i] == ' ') {
if (state == IN && s[k] == s[i - 1])
cout << s.substr(k, i - k + 1) << endl;
state = OUT;
} else if (state == OUT) {
k = i;
state = IN;
}
return 0;
}
Похожие вопросы
Предмет: Математика,
автор: eshepel2010
Предмет: Физика,
автор: dkrylov638
Предмет: Математика,
автор: MilisaMila
Предмет: Математика,
автор: 87072516746
Предмет: Математика,
автор: EM144