Шифр Атбаш - Pascal ABC

Узнай цену своей работы

Формулировка задачи:

Напишите программу, реализующую алгоритм шифрования с помощью шифра Атбаш.

Решение задачи: «Шифр Атбаш»

textual
Листинг программы
const alf='абвгдеёжзийклмнопрстуфхцчшщъыьэюя';
function atbash(s:string):string;
var i:integer;
begin
for i:=1 to Length(s) do
s[i]:=alf[33-pos(s[i],alf)+1];
atbash:=s;
end;
 
var s:string;
begin
writeln('Введите строку для шифрования');
readln(s);
writeln('Зашифрованная строка');
s:=atbash(s);
writeln(s);
writeln('Расшифрованная строка');
s:=atbash(s);
writeln(s);
end.

Объяснение кода листинга программы

  1. В первой строке кода объявляется константа alf, которая содержит все буквы русского алфавита в верхнем регистре.
  2. Затем определяется функция atbash, которая принимает строку s в качестве аргумента и возвращает зашифрованную строку.
  3. Внутри функции переменной i присваивается значение 1 и начинается цикл for, который выполняется столько раз, сколько символов в строке s.
  4. В каждой итерации цикла текущий символ из строки s заменяется на тот, который находится на той же позиции в алфавите (если позиция меньше 26), или на случайный символ из алфавита (если позиция больше 26).
  5. После завершения цикла функция возвращает полученную зашифрованную строку.
  6. Далее объявляется переменная s, в которую записывается введенная пользователем строка для шифрования.
  7. Затем выводится приглашение для ввода строки для шифрования.
  8. После ввода строки пользователем, выводится зашифрованная строка.
  9. Далее вызывается функция atbash, чтобы зашифровать введенную строку, и результат присваивается переменной s.
  10. После этого выводится расшифрованная строка.
  11. И, наконец, вызывается функция atbash, чтобы расшифровать последнюю строку, и результат выводится на экран.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.133 из 5
Похожие ответы