Матч 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;

  }

};