Предмет: Информатика,
автор: kokokok
Передавая записку на уроке английского языка, друзья не хотят, чтобы кто-то прочел ее содержимое. Для этого текст шифруют простым методом: заменяют каждую букву на букву, расположенную в алфавите на расстоянии N символов от исходной. Считается, что алфавит циклически замкнут. Напишите программу-шифровальщик.
Ответы
Автор ответа:
0
Const
N = 5;
EN = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
RU = 'абвгдеёжзийклмнопрстуфхцчшщьыъэюяАБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЬЫЪЭЮЯ';
Var
S : String;
i : Byte;
Begin
Readln(S);
For i:=1 to Length(S) do
Begin
If Pos(S[i],EN)>0 then
If Pos(S[i],EN)+N<=Length(EN) then
S[i]:=EN[Pos(S[i],EN)+N] else S[i]:=EN[Pos(S[i],EN)+N-Length(EN)];
If Pos(S[i],RU)>0 then
If Pos(S[i],RU)+N<=Length(RU) then
S[i]:=RU[Pos(S[i],RU)+N] else S[i]:=RU[Pos(S[i],RU)+N-Length(RU)];
end;
Writeln(S);
end.
N = 5;
EN = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
RU = 'абвгдеёжзийклмнопрстуфхцчшщьыъэюяАБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЬЫЪЭЮЯ';
Var
S : String;
i : Byte;
Begin
Readln(S);
For i:=1 to Length(S) do
Begin
If Pos(S[i],EN)>0 then
If Pos(S[i],EN)+N<=Length(EN) then
S[i]:=EN[Pos(S[i],EN)+N] else S[i]:=EN[Pos(S[i],EN)+N-Length(EN)];
If Pos(S[i],RU)>0 then
If Pos(S[i],RU)+N<=Length(RU) then
S[i]:=RU[Pos(S[i],RU)+N] else S[i]:=RU[Pos(S[i],RU)+N-Length(RU)];
end;
Writeln(S);
end.
Автор ответа:
0
А "Первый вариант" зачем, если он неверный?
Автор ответа:
0
Убрал, но тогда и наши комменты надо тоже чистить, чтобы не вводить в заблуждение.
Автор ответа:
0
Когда задача и решения уйду в архив, все комментарии автоматически удалятся. Вообще все.
Автор ответа:
0
Именно поэтому мы требуем, чтобы все необходимое было в текстах вопроса и решений.
Автор ответа:
0
Я Вас понял.
Похожие вопросы
Предмет: Математика,
автор: nikitakim1510
Предмет: Физика,
автор: dariasergeenko100
Предмет: Қазақ тiлi,
автор: alinaserik131
Предмет: Химия,
автор: Фримэн
Предмет: Литература,
автор: yulia29291