uses crt;
var s1,s2,s:string;
i,j,mx:byte;
begin
clrscr;
writeln('Введите первую строку:');
readln(s1);
writeln('Введите первую строку:');
readln(s2);
mx:=0;
for i:=1 to length(s1) do
for j:=i to length(s1) do
if (pos(copy(s1,i,j-i+1),s2)>0)and(j-i+1>mx) then
begin
mx:=j-i+1;
s:=copy(s1,i,j-i+1);
end;
if mx=0 then write('Общих подстрок нет!')
else writeln('Максимальная общая подстрока:');
write(s);
readln
end.