Некоторый алгоритм из одной цепочки знаков получает новейшую цепочку последующим

Некий алгоритм из одной цепочки символов получает новейшую цепочку последующим образом. Сначала рассчитывается длина исходной цепочки знаков; если она нечётна, то дублируется средний символ цепочки знаков, а если четна, то в начало цепочки добавляется буковка С. В полученной цепочке символов каждая буковка заменяется буковкой, следующей за ней в русском алфавите (А на Б, Б на В и т. д., а Я на А). Получившаяся таким образом цепочка является результатом работы алгоритма.
Например, если исходной была цепочка КОТ, то результатом работы алгоритма будет цепочка ЛППУ, а если исходной была цепочка ВАНЯ, то результатом работы алгоритма будет цепочка ТГБОА.
Дана цепочка знаков КОМ. Какая цепочка знаков получится, если к данной цепочке применить описанный алгоритм два раза (т. е. применить метод к данной цепочке, а потом к результату вновь применить метод)? Русский алфавит: АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ.

Задать свой вопрос
2 ответа
Итог: ТМРРО


Const abc = 'АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯА';
Var s : String;

Function Alg(ss : String) : String;
Var i : Integer;
Begin
  If Odd(Length(ss)) then Insert(ss[(Length(ss) div 2)+1],ss,(Length(ss) div 2)+1) else ss:='С'+ss;
  For i:=1 to Length(ss) do If Pos(ss[i],abc)gt;0 then ss[i]:=abc[Pos(ss[i],abc)+1];
  Alg:=ss;
end;

Begin
  Readln(s);
  Writeln(Alg(s));
  Writeln(Alg(Alg('КОМ')));
end.

КОМ -gt; КООМ -gt; ЛППН
ЛППН -gt; СЛППН  -gt; ТМРРО
, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт