program CryptDemo_6; (***************************************) (*Шифрование строк текста сдвигами по паролю символов с кодами 32..255.*) (* Turbo Pascal 3.xx *) (***************************************) const TestTxt1 = ?Мама мыла Машу мылом. Маша мыло не любила. ?#10; TestTxt2 = ?Шифрование заменой символов.?; PassWord : array [0..12] of char = ?Сов. секретно?; var I, J, K : byte; Line : string [$FF]; begin TextBackGround (Black); (* шифруемый текст *) Line := TestTxt1 + TestTxt2; TextColor (Yellow); WriteLn (Line); (* шифрование заменой символов *) for I := 1 to Length (Line) do if Line [I] >= #32 then begin J := Ord (Line [I]) - 32; K := Ord (PassWord [I mod 13]) - 32; Line [I] := Chr ((J + 224 - K) mod 224 + 32) end; TextColor (LightCyan); WriteLn (Line); (* дешифрирование замены символов *) for I := 1 to Length (Line) do if Line [I] >= #32 then begin J := Ord (Line [I]) - 32; K := Ord (PassWord [I mod 13]) - 32; Line [I] := Chr ((J + K) mod 224 + 32) end; TextColor (White); Write (Line); TextColor (LightGray); WriteLn; Halt end. (* CryptDemo_6 *)