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