51328

Методы шифрования текста при помощи аналитических преобразований

Лабораторная работа

Информатика, кибернетика и программирование

Цель работы: Научиться составлять программы шифрования текста, основываясь на алгебру матриц. Вывод: научился составлять программы шифрования текста, основываясь на алгебру матриц.

Русский

2014-02-09

68.61 KB

8 чел.

Цель работы: Научиться составлять программы шифрования текста, основываясь на алгебру матриц.

Изм.

Лист

№ докум.

Подпись

Дата

Лист

1

Лабораторная работа №3

Разраб.

Карецкий

Пров.

Смулаковский

Н. Контр.

Утв.

Методы шифрования текста при помощи аналитических преобразований.

Лит.

Листов

4

КОГУ 59П-3

 

Ход работы:  

program Project1;

unit LAB3;

interface

uses

 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

 Dialogs,xpman, Grids, StdCtrls;

type

 TForm1 = class(TForm)

   mat: TStringGrid;

   Label1: TLabel;

   Button1: TButton;

   Label2: TLabel;

   Edit2: TEdit;

   Button2: TButton;

   Edit3: TEdit;

   Label3: TLabel;

   Button3: TButton;

   qw: TEdit;

   procedure Button1Click(Sender: TObject); //осуществлятся шифровка

   procedure Button2Click(Sender: TObject); //дешифровка

   procedure Button3Click(Sender: TObject); //заполнение матрицы

   procedure qwChange(Sender: TObject);     //если забито значение, то шифровать

   procedure Edit2Change(Sender: TObject);  //если есть значение, то дешифровать

 private

   { Private declarations }

 public

   { Public declarations }

 end;

var

 Form1: TForm1;

 rus,text,rashifr,shifr,c:string;

 s:char;

 i,j,q,k,e,f,opr:integer;

 p,m:array [0..2,0..2] of integer;

 z,r:array[0..2]of integer;

implementation

{$R *.dfm}

//осуществлятся шифровка

procedure TForm1.Button1Click(Sender: TObject);

begin

edit2.Text:='';

edit3.text:='';

q:=0;

k:=0;

rus:='абвгдеёжзийклмнопрстуфхцчшщъыьэюя';

text:=qw.text;

//if length(text)mod 4<>0 then

begin

//while  length(text)mod 4<>0 do

begin

text:=text+' ';

for i:=1 to length(text) do

Изм.

Лист

№ докум.

Подпись

Дата

Лист

2

Лабораторная работа №3

for j:=1 to length(rus) do

if text[i]=rus[j] then begin

z[q]:=j;

q:=q+1;

if q=3 then

begin

for e:=0 to 2 do

begin

for f:=0 to 2 do

k:=k+m[f,e]*z[f];

shifr:=shifr+inttostr(k)+' ';

k:=0;

end;

q:=0;

end;

end;

end;

end;

edit2.text:=shifr;

end;

Изм.

Лист

№ докум.

Подпись

Дата

Лист

3

Лабораторная работа №3

procedure TForm1.Button2Click(Sender: TObject);

begin

for i:=1 to 9 do

opr:=m[i,j]+i*k;

for i:=0 to 2 do

for j:=0 to 2 do

p[i,j]:=opr;

for i:=0 to 2 do

for j:=0 to 2 do

begin

r[i]:=p[i,j]*z[f];

rashifr:=rus[i];

end;

for i:=1 to length(rashifr) do

edit3.text:=rashifr;

edit3.Text:=text;

end;

procedure TForm1.Button3Click(Sender: TObject);

begin

with mat do

begin

for i:=0 to colcount-1 do

for j:=0 to rowcount-1 do

begin

k:=random(8)+1;

cells[i,j]:=inttostr(k);

m[j,i]:=k;

end;

end;

end;

procedure TForm1.qwChange(Sender: TObject);

begin

if qw.text<>'' then  button1.Enabled:=true;

end;

procedure TForm1.Edit2Change(Sender: TObject);

begin

if edit2.text<>'' then button2.enabled:=true;

end;

end.

Изм.

Лист

№ докум.

Подпись

Дата

Лист

4

Лабораторная работа №3

Вывод: научился составлять программы шифрования текста, основываясь на алгебру матриц.


 

А также другие работы, которые могут Вас заинтересовать

59214. Команда присвоєння. Кодоплівка. Проміжні величини 34.5 KB
  Для того щоб запам’ятати або змінити значення величини в алгоритмічній мові є спеціальна команда – команда присвоєння яка записується в такому вигляді: зміна: = вираз або кодоплівка ім’я змінної: = вираз...
59215. Перевірка і редагування тестів-описів 43 KB
  Мета: Вчити перевіряти творчі роботи, редагуючи тексти і виправляти помилки. Розвивати мислення, мовлення та уміння самостійно здійснювати контроль за виконанням творчих робіт. Виховувати шанобливе ставлення до мови.
59216. Множення двоцифрового числа на одноцифрове 26 KB
  Розвивати мислення і память виховувати охайність працелюбність. Розв’язуємо задачі. Розв’язування прикладів коментовано множення числа на суму ІІІ. Розв’язування задач.
59217. Додавання двоцифрових чисел без переходу через десяток. Приклади виду 34 + 52 68.5 KB
  Вчити застосувати здобуті знання під час обчислення виразів розв’язанні різних завдань. Розвивати увагу спостережливість. 24 73 = 20 4 70 3 Як зручно обчислити суму 2 Пояснити розв’язання прикладу 34 52.
59218. Текст-опис за картиною. Сценарій проведення уроку 28.5 KB
  Передати функції контролю за написанням твору групам Розвивати спостережливість, зв’язне мовлення, уміння чітко висловлювати свої думки. Виховувати шанобливе ставлення до слова і любов до природи.
59219. Текст-опис за картиною В. Д. Поленова: Ставок, що заріс 32 KB
  Мета. Вчити змальовувати пейзажі за картиною та колективно складеним планом. Розвивати мову і спостережливість, збагачувати словниковий запас, розвивати уміння висловлювати свої думки та почуття.
59220. Письмове ділення багатоцифрового числа на одноцифрове у випадку, коли в частці дістають нулі 27.5 KB
  Мета: Ознайомити учнів з випадком ділення, коли в середині або в кінці частки з’являються нулі. Продовжити роботу з формування в учнів уміння виконувати письмове ділення на одноцифрове число. Розвивати логіку мислення. Виховувати працелюбність.
59221. Тестирование аппаратно-программных средств ЭВМ 584.52 KB
  Цель работы – с помощью программного средства диагностики ЭВМ определить основные характеристики аппаратных и программных средств ЭВМ, выполнить анализ производительности ЭВМ.
59222. Г.Ібсен Ляльковий дім – соціально-психологічна драма. Показ шляху становлення особистості Нори 31.5 KB
  Мета уроку: розкрити суть соціально-психологічної драми Ляльковий дім зясувати основні проблеми особливості композиції драми дослідити як у п’єсі розглядається проблема становлення особистості Нори і формувати вміння та навики аналізу драматичного твору з опорою на текст.