Вводятся 2 строки. Найдите их наибольшую общую подстроку — Pascal(Паскаль)

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.

Leave a Comment

+ 67 = 70