Лабораторная работа про Практикуму 4

  • docx
  • 03.05.2021
Публикация в СМИ для учителей

Публикация в СМИ для учителей

Бесплатное участие. Свидетельство СМИ сразу.
Мгновенные 10 документов в портфолио.

Иконка файла материала Лабораторная работа про Практикуму 4.docx

МИНОБРНАУКИ РОССИИ

Федеральное государственное бюджетное

образовательное учреждение высшего образования

«Костромской государственный университет»

(КГУ)

Институт педагогики и психологии

Кафедра педагогики и акмеологии личности

 

 

 

 

 

ОТЧЁТ ПО ЛАБОРАТОРНОЙ РАБОТЕ №4

«ПРОГРАММИРОВАНИЕ АРИФМЕТИЧЕСКИХ АЛГОРИТМОВ ШИФРОВАНИЯ»

 

 

Направление подготовки 44.03.05. Педагогическое образование

(с двумя профилями подготовки)

Направленность – Начальное образование, информатика

Квалификация (степень) ученика – бакалавр

 

 

 

 

 

 

 

 

Выполнил студент:

Серова В.А

Курс: 4. Группа: 16-НИбо-7

 

 

 

 

 

Кострома

2020

Блок-схема алгоритма шифрования

https://sun9-69.userapi.com/impg/iA-sJKK7yvx5zyEdnmfVZQQyAcDHDLFl1UhYSA/jabR4bGydrU.jpg?size=810x1080&quality=96&sign=97d0c67b003dc80f82eeb5f9989bcc1e


 

Текст программы

var

  a: char;

  i, n, k: integer;

  s, s1: string;

  f_in, f_out: text;

 

begin

  assign(f_in, 'Изначальный.txt');

  assign(f_out, 'Зашифрованный.txt');

  reset(f_in);

  rewrite(f_out);

  k := -3;

  while not eof(f_in) do

  begin

    s := '';

    s1 := '';

    while not eoln(f_in) do

      read(f_in, s);

    readln(f_in);

    for i := 1 to length(s) do

    begin

      n := ord(s[i]);

      if (n <> 32) and (n >= 1040) and (n <= 1103) then

      begin

        if k > 0 then

        begin

          if n in [1040..1071 - k]  then

            n := n + k

          else if n <= 1071 then

            n := 1039 + abs(k - (1071 - n));

          if n in [1072..1103 - k]  then

            n := n + k

          else if n >= 1103 - k then

            n := 1071 + abs(k - (1103 - n));

        end;       

        if k < 0 then

        begin

          if n in [1040 - k..1071] then

            n := n + k

          else if n <= 1040 - k then

            n := 1071 - abs(k + (n - 1039));

          if n in [1072 - k..1103] then

            n := n + k

          else if n in [1072..1072 - k] then

            n := 1103 - abs(k + (n - 1071));

        end;

      end;

      a := chr(n);

      s1 := s1 + a;

    end;

    writeln(s1);

    writeln(f_out, s1);

  end;

  close(f_in);

  close(f_out);

end.

Изначальный текст

В системах с открытым ключом используются два ключа -

открытый и закрытый, которые математически связаны друг с

другом. Информация шифруется с помощью открытого ключа,

который доступен всем желающим, а расшифровывается с

помощью закрытого ключа, известного только получателю

сообщения.

Зашифрованный текст

Я оеопвйэт о лпзншпшй зиыфлй еомлищдрыпоь бяэ зиыфэ -

лпзншпшж е дэзншпшж, злплншв йэпвйэпефвозе ояьдэкш бнра о

бнралй. Екслнйэуеь хеснрвпоь о млйлцщы лпзншплал зиыфэ,

злплншж блопрмвк яовй гвиэыцей, э нэохеснляшяэвпоь о

млйлцщы дэзншплал зиыфэ, едявопклал плищзл млирфэпвиы

оллюцвкеь.