Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- unit Unit1;
- {$mode objfpc}{$H+}
- interface
- uses
- Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls;
- type
- { TDenisov }
- TDenisov = class(TForm)
- Button1: TButton;
- Button2: TButton;
- Edit1: TEdit;
- Edit2: TEdit;
- Edit3: TEdit;
- Edit4: TEdit;
- Edit5: TEdit;
- Label1: TLabel;
- Label2: TLabel;
- Label3: TLabel;
- Label4: TLabel;
- Label5: TLabel;
- Label6: TLabel;
- procedure Button1Click(Sender: TObject);
- procedure Button2Click(Sender: TObject);
- procedure Edit1Change(Sender: TObject);
- procedure Edit2Change(Sender: TObject);
- procedure FormCreate(Sender: TObject);
- private
- public
- end;
- var
- Denisov: TDenisov;
- implementation
- {$R *.lfm}
- { TDenisov }
- procedure TDenisov.Edit1Change(Sender: TObject);
- begin
- end;
- procedure TDenisov.Button1Click(Sender: TObject);
- type
- ta = array[0..15, 0..15] of integer;
- var c:string;
- I,j,max,u:integer;
- a:array[1..10] of integer;
- b:array[0..15] of integer;
- n:array[0..4] of integer;
- H:ta;
- begin
- c:=edit1.Text;
- for i:=1 to length(c) do a[i]:=strtoint(c[i]);
- for i:=1 to length(c) do if a[i]=0 then a[i]:=-1;
- for i:=1 to length(c) do edit2.text:=edit2.text+inttostr(a[i])+';';
- H[0,0]:=1; H[0,1]:=1; H[0,2]:=1; H[0,3]:=1; H[0,4]:=1; H[0,5]:=1; H[0,6]:=1; H[0,7]:=1; H[0,8]:=1; H[0,9]:=1; H[0,10]:=1; H[0,11]:=1; H[0,12]:=1; H[0,13]:=1; H[0,14]:=1; H[0,15]:=1;
- H[1,0]:=1; H[1,1]:=-1; H[1,2]:=1; H[1,3]:=-1; H[1,4]:=1; H[1,5]:=-1; H[1,6]:=1; H[1,7]:=-1; H[1,8]:=1; H[1,9]:=-1; H[1,10]:=1; H[1,11]:=-1; H[1,12]:=1; H[1,13]:=-1; H[1,14]:=1; H[1,15]:=-1;
- H[2,0]:=1; H[2,1]:=1; H[2,2]:=-1; H[2,3]:=-1; H[2,4]:=1; H[2,5]:=1; H[2,6]:=-1; H[2,7]:=-1; H[2,8]:=1; H[2,9]:=1; H[2,10]:=-1;H[2,11]:=-1; H[2,12]:=1; H[2,13]:=1; H[2,14]:=-1; H[2,15]:=-1;
- H[3,0]:=1; H[3,1]:=-1; H[3,2]:=-1; H[3,3]:=1; H[3,4]:=1; H[3,5]:=-1; H[3,6]:=-1; H[3,7]:=1; H[3,8]:=1; H[3,9]:=-1; H[3,10]:=-1; H[3,11]:=1; H[3,12]:=1; H[3,13]:=-1; H[3,14]:=-1; H[3,15]:=1;
- H[4,0]:=1; H[4,1]:=1; H[4,2]:=1; H[4,3]:=1; H[4,4]:=-1; H[4,5]:=-1; H[4,6]:=-1; H[4,7]:=-1; H[4,8]:=1; H[4,9]:=1; H[4,10]:=1; H[4,11]:=1; H[4,12]:=-1; H[4,13]:=-1; H[4,14]:=-1; H[4,15]:=-1;
- H[5,0]:=1; H[5,1]:=-1; H[5,2]:=1; H[5,3]:=-1; H[5,4]:=-1; H[5,5]:=1; H[5,6]:=-1; H[5,7]:=1; H[5,8]:=1; H[5,9]:=-1; H[5,10]:=1; H[5,11]:=-1; H[5,12]:=-1; H[5,13]:=1; H[5,14]:=-1; H[5,15]:=1;
- H[6,0]:=1; H[6,1]:=1; H[6,2]:=-1; H[6,3]:=-1; H[6,4]:=-1; H[6,5]:=-1; H[6,6]:=1; H[6,7]:=1; H[6,8]:=1; H[6,9]:=1; H[6,10]:=-1; H[6,11]:=-1; H[6,12]:=-1; H[6,13]:=-1; H[6,14]:=1; H[6,15]:=1;
- H[7,0]:=1; H[7,1]:=-1; H[7,2]:=-1; H[7,3]:=1; H[7,4]:=-1; H[7,5]:=1; H[7,6]:=1; H[7,7]:=-1; H[7,8]:=1; H[7,9]:=-1; H[7,10]:=-1; H[7,11]:=1; H[7,12]:=-1; H[7,13]:=1; H[7,14]:=1; H[7,15]:=-1;
- H[8,0]:=1; H[8,1]:=1; H[8,2]:=1; H[8,3]:=1; H[8,4]:=1; H[8,5]:=1; H[8,6]:=1; H[8,7]:=1; H[8,8]:=-1; H[8,9]:=-1; H[8,10]:=-1; H[8,11]:=-1; H[8,12]:=-1; H[8,13]:=-1; H[8,14]:=-1; H[8,15]:=-1;
- H[9,0]:=1; H[9,1]:=-1; H[9,2]:=1; H[9,3]:=-1; H[9,4]:=1; H[9,5]:=-1; H[9,6]:=1; H[9,7]:=-1; H[9,8]:=-1; H[9,9]:=-1; H[9,10]:=-1; H[9,11]:=1; H[9,12]:=-1; H[9,13]:=1; H[9,14]:=-1; H[9,15]:=1;
- H[10,0]:=1;H[10,1]:=1; H[10,2]:=-1; H[10,3]:=-1; H[10,4]:=1; H[10,5]:=1; H[10,6]:=-1; H[10,7]:=-1; H[10,8]:=-1; H[10,9]:=-1; H[10,10]:=1; H[10,11]:=1; H[10,12]:=-1; H[10,13]:=-1; H[10,14]:=1; H[10,15]:=1;
- H[11,0]:=1;H[11,1]:=-1; H[11,2]:=-1;H[11,3]:=1; H[11,4]:=1; H[11,5]:=-1; H[11,6]:=-1; H[11,7]:=1; H[11,8]:=-1; H[11,9]:=1; H[11,10]:=1; H[11,11]:=-1; H[11,12]:=-1; H[11,13]:=1; H[11,14]:=1; H[11,15]:=-1;
- H[12,0]:=1;H[12,1]:=1; H[12,2]:=1; H[12,3]:=1; H[12,4]:=-1; H[12,5]:=-1; H[12,6]:=-1; H[12,7]:=-1; H[12,8]:=-1; H[12,9]:=-1; H[12,10]:=-1; H[12,11]:=-1; H[12,12]:=1; H[12,13]:=1; H[12,14]:=1; H[12,15]:=1;
- H[13,0]:=1;H[13,1]:=-1; H[13,2]:=1; H[13,3]:=-1;H[13,4]:=-1; H[13,5]:=1; H[13,6]:=-1; H[13,7]:=1; H[13,8]:=-1; H[13,9]:=1; H[13,10]:=-1; H[13,11]:=1; H[13,12]:=1; H[13,13]:=-1; H[13,14]:=1; H[13,15]:=-1;
- H[14,0]:=1;H[14,1]:=1; H[14,2]:=-1; H[14,3]:=-1;H[14,4]:=-1; H[14,5]:=-1; H[14,6]:=1; H[14,7]:=1; H[14,8]:=-1; H[14,9]:=-1; H[14,10]:=1; H[14,11]:=1; H[14,12]:=1; H[14,13]:=1; H[14,14]:=-1; H[14,15]:=-1;
- H[15,0]:=1;H[15,1]:=-1; H[15,2]:=-1; H[15,3]:=1;H[15,4]:=-1; H[15,5]:=1; H[15,6]:=1; H[15,7]:=-1; H[15,8]:=-1; H[15,9]:=1; H[15,10]:=1; H[15,11]:=-1; H[15,12]:=1; H[15,13]:=-1; H[15,14]:=-1; H[15,15]:=1;
- for i:=0 to 15 do
- for j:=0 to 15 do
- b[i]:=b[i]+(H[j,i]*a[i]);
- for i:=0 to 15 do edit3.text:=edit3.text+inttostr(b[i])+';';
- for i:=0 to 15 do
- begin
- if abs(b[i]) > max then begin max:=a[i]; u:=i; end;
- end;
- edit4.text:=inttostr(max)+'ближайшим кодовым словом будет'+inttostr(u+1)+'строка';
- n[0]:=strtoint(c[1]);
- n[1]:=strtoint(c[2])+H[u,2];
- n[2]:=strtoint(c[3])+H[u,3];
- n[3]:=strtoint(c[4])+H[u,4];
- n[4]:=strtoint(c[5])+H[u,5];
- edit4.text:=inttostr(n[0])+inttostr(n[2])+inttostr(n[2])+inttostr(n[3])+inttostr(n[4]);
- end;
- procedure TDenisov.Button2Click(Sender: TObject);
- begin
- close;
- end;
- procedure TDenisov.Edit2Change(Sender: TObject);
- begin
- end;
- procedure TDenisov.FormCreate(Sender: TObject);
- begin
- end;
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement