Шифр Атбаш - 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.
Объяснение кода листинга программы
- В первой строке кода объявляется константа alf, которая содержит все буквы русского алфавита в верхнем регистре.
- Затем определяется функция atbash, которая принимает строку s в качестве аргумента и возвращает зашифрованную строку.
- Внутри функции переменной i присваивается значение 1 и начинается цикл for, который выполняется столько раз, сколько символов в строке s.
- В каждой итерации цикла текущий символ из строки s заменяется на тот, который находится на той же позиции в алфавите (если позиция меньше 26), или на случайный символ из алфавита (если позиция больше 26).
- После завершения цикла функция возвращает полученную зашифрованную строку.
- Далее объявляется переменная s, в которую записывается введенная пользователем строка для шифрования.
- Затем выводится приглашение для ввода строки для шифрования.
- После ввода строки пользователем, выводится зашифрованная строка.
- Далее вызывается функция atbash, чтобы зашифровать введенную строку, и результат присваивается переменной s.
- После этого выводится расшифрованная строка.
- И, наконец, вызывается функция atbash, чтобы расшифровать последнюю строку, и результат выводится на экран.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д