type mas=array[1..255]of integer;
procedure encode(s:string;var a:mas;var n:integer);
var i,k,p:integer;
t:string;
begin
n:=length(s);
randomize;
for i:=1 to n do
begin
k:=1+random(9);
p:=k*ord(s[i]);
str(p,t);
t:=chr(k+48)+t;
val(t,a[i],k);
end;
end;
procedure decode(a:mas;n:integer;var s:string);
var i,k,p,c:integer;
t:string;
begin
s:='';
for i:=1 to n do
begin
str(a[i],t);
k:=ord(t[1])-48;
delete(t,1,1);
val(t,p,c);
p:=p div k;
s:=s+chr(p);
end;
readln
end;
var s:string;
a:mas;
n,i:integer;
begin
write('Введите строку для шиврования');
readln(s);
writeln('Зашифрованный текст');
encode(s,a,n);
for i:=1 to n do
write(a[i]);
writeln;
writeln('Расшифрованный текст');
decode(a,n,s);
write(s);
end.