Код: Выделить всё
type
TKey=array[1..3,1..3] of integer;
TV=array [1..3] of integer;
function Mull(x:tv; key:TKey):tv;//функция умножения матрици на вектор
var v:tv;
i,j,L:integer;
begin
for i:=1 to 3 do
begin
v[i]:=0;
for j:=1 to 3 do
v[i]:=v[i]+x[j]*Key[i,j];
end;
Mull:=v;
end;
//функция шифрования
function Endcode(s:string;Key:TKey):String;
var i,j,k:integer;
c:char;
v,x:TV;
L:integer;
r:string;
l1:real;
begin
r:='';
L:=Length(s);
L1:=strtofloat(inttostr(L))/3;
for i:=1 to strtoint(floattostr(L1)) do
begin
for j:=0 to 2 do
begin
k:=i*3+j;
if k<=L then c:=s[k] else c:=char(0);
x[i]:=ord(c);
end;
v:=Mull(x,Key);
if r<>'' then r:=r+' ';
r:=r+IntToStr(v[1]);
r:=r+' ';
r:=r+IntToStr(v[2]);
r:=r+' ';
r:=r+IntToStr(v[3]);
r:=r+' ';
end;
Endcode:=r;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
Key:tkey;
x, v: tv;
s,t: string;
i,j,k:integer;
begin
memo2.Clear;
Key[1,1]:=1;Key[1,2]:=4;Key[1,3]:=8;
Key[2,1]:=3;Key[2,2]:=7;Key[2,3]:=2;
Key[3,1]:=6;Key[3,2]:=9;Key[3,3]:=5;
s:=memo1.Text;
memo2.Text:=Endcode(s,Key);
end;
Пожалуйста подскажите что не верно в функии Endcode