Матч
7, Текстовый процессор (TextProcessor)
Строка text содержит латинские буквы верхнего и нижнего регистра. Вернуть
строку, содержащую все буквы строки, преобразованные в нижний регистр,
отсортированные в алфавитном порядке.
Класс: TextProcessor
Метод: string
collectLetters(string text)
Ограничения: text содержит от 1 до 50 символов ‘a’ – ‘z’,
‘A’ – ‘Z’, ‘0’ – ‘9’, ‘ ‘ (пробел).
Вход. Строка text.
Выход. Строка, содержащая буквы text,
преобразованные в нижний регистр, в алфавитном порядке.
Пример входа
text |
“She sells sea shells” |
“ReMemBEr To IgnoRE CASe” |
“Knights are better than
Bishops” |
Пример выхода
“aeeeehhllllssssss”
“abceeeeegimmnoorrrst”
“aabbeeeghhhiiknnoprrssstttt”
РЕШЕНИЕ
обработка строк
Проходим по символам строки text. Если символ является буквой, то
преобразовываем его в нижний регистр и добавляем в конец строки res. Сортируем буквы строки res и возвращаем ее.
ПРОГРАММА
#include <cstdio>
#include <string>
#include <algorithm>
using namespace std;
class TextProcessor
{
public:
string collectLetters(string text)
{
int i;
string res;
for(i=0;i<text.size();i++)
if (isalpha(text[i])) res +=
tolower(text[i]);
sort(res.begin(),res.end());
return res;
}
};