Зашифровать строку, изменив код каждого символа на число N - Pascal ABC
Формулировка задачи:
Дана строка(Любое предложение). Зашифровать её, изменив код каждого символа на число N
Решение задачи: «Зашифровать строку, изменив код каждого символа на число N»
textual
Листинг программы
var i,n:integer; s:string; begin write('s = ');readln(s); write('n = ');readln(n); for i:=1 to length(s) do s[i]:=chr(abs(255+ord(s[i])+n mod 255)mod 255); writeln(s) end.
Объяснение кода листинга программы
В данном коде происходит шифрование строки.
- Переменная
i
инициализируется значением 1, а переменнаяn
- значением, полученным от пользователя. - Строка
s
считывается с помощью функцииreadln()
. - Значение переменной
n
преобразуется в абсолютное значение с помощью функцииabs()
. - В цикле
for
происходит преобразование каждого символа строкиs
. Для этого используется функцияord()
, которая возвращает числовое представление символа. Затем это число преобразуется в строку с помощью функцииchr()
. - Полученное число шифруется с помощью формулы
abs(255 + ord(s[i]) + n mod 255) mod 255
. Здесьord(s[i])
- это числовое представление символаs[i]
, аn mod 255
- это остаток от деления значенияn
на 255. - Шифрованный символ заменяет исходный символ в строке
s
. - После выполнения цикла
for
шифрованная строка выводится на экран с помощью функцииwriteln()
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д