Написать класс работы со строками. Добавить следующие методы:
1) Подсчитать количество слов, длина которых больше
заданного числа.
2) Подсчитать количество слов, длина которых меньше
заданного числа.
С++ 95 баллов!
Ответы
Ответ:
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.