Program Shifr;
var
s1,s2,alf,key:string;
i,n, Kod:integer;
f1,f2:text;
BEGIN
alf:='абвгдеёжзийклмнопрстуфхцчшщъыьэюя';
assign(f1,'Dannie.txt');
assign(f2,'Shifr.txt');
reset(f1);
rewrite(f2);
writeln('Введите четырехзначный ключ шифрования:');
readln(key);
n:=0;
while Not(Eof(f1)) do
begin
readln(f1,s1);
s2:='';
for i:=1 to length(s1) do
begin
Kod:=Pos(s1[i],alf);
n:=n+1;
if n>4 then n:=1;
Kod:=Kod+StrToInt(key[n]);
if Kod>33 then Kod:=Kod-33;
if Kod<1 then Kod:=Kod+33;<br> s2:=s2+alf[Kod];
end;
writeln(f2,s2);
end;
close(f1);
close(f2);
END.
Program DeShifr;
var
s1,s2,alf,key:string;
i,n,Kod:integer;
f1,f2:text;
BEGIN
alf:='абвгдеёжзийклмнопрстуфхцчшщъыьэюя';
assign(f1,'Shifr.txt');
assign(f2,'DeShifr.txt');
reset(f1);
rewrite(f2);
writeln('Введите четырехзначный ключ шифрования:');
readln(key);
n:=0;
while Not(Eof(f1)) do
begin
readln(f1,s1);
s2:='';
for i:=1 to length(s1) do
begin
Kod:=Pos(s1[i],alf);
n:=n+1;
if n>4 then n:=1;
Kod:=Kod-StrToInt(key[n]);
if Kod>33 then Kod:=Kod-33;
if Kod<1 then Kod:=Kod+33;<br> s2:=s2+alf[Kod];
end;
writeln(f2,s2);
end;
close(f1);
close(f2);
END.