Данный код создает класс StringOperations, который принимает строку в конструкторе и содержит два метода: countWordsLongerThan и countWordsShorterThan. Первый метод подсчитывает количество слов, длина которых больше заданной длины, а второй метод подсчитывает количество слов, длина которых меньше заданной длины. Для разбиения строки на слова используется stringstream.
Answers & Comments
Ответ:
class StringOperations
{
private:
std::string str;
public:
StringOperations(std::string s)
{
str = s;
}
int countWordsLongerThan(int length)
{
int count = 0;
std::stringstream ss(str);
std::string word;
while (ss >> word)
{
if (word.length() > length)
{
count++;
}
}
return count;
}
int countWordsShorterThan(int length)
{
int count = 0;
std::stringstream ss(str);
std::string word;
while (ss >> word)
{
if (word.length() < length)
{
count++;
}
}
return count;
}
};
Объяснение:
Данный код создает класс StringOperations, который принимает строку в конструкторе и содержит два метода: countWordsLongerThan и countWordsShorterThan. Первый метод подсчитывает количество слов, длина которых больше заданной длины, а второй метод подсчитывает количество слов, длина которых меньше заданной длины. Для разбиения строки на слова используется stringstream.