Зашифровать строку, изменив код каждого символа на число 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.

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

В данном коде происходит шифрование строки.

  1. Переменная i инициализируется значением 1, а переменная n - значением, полученным от пользователя.
  2. Строка s считывается с помощью функции readln().
  3. Значение переменной n преобразуется в абсолютное значение с помощью функции abs().
  4. В цикле for происходит преобразование каждого символа строки s. Для этого используется функция ord(), которая возвращает числовое представление символа. Затем это число преобразуется в строку с помощью функции chr().
  5. Полученное число шифруется с помощью формулы abs(255 + ord(s[i]) + n mod 255) mod 255. Здесь ord(s[i]) - это числовое представление символа s[i], а n mod 255 - это остаток от деления значения n на 255.
  6. Шифрованный символ заменяет исходный символ в строке s.
  7. После выполнения цикла for шифрованная строка выводится на экран с помощью функции writeln().

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

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