Написать процедуру, определяющую одинаковых "соседей" (слова справа и слева - совпадают)

Ввести последовательность слов, в каждом из которых от 2 до 6 латинских букв. Слова разделены запятыми. Последнее слово заканчивается точкой. Написать процедуру, определяющую одинаковых "соседей" (слова справа и слева - совпадают). Напечатать всех "соседей" и исходную последовательность слов

code: #pascal
Program PascalGuru;
 
var s:string;
 
{--------------------------------------------------------------}
procedure sosedi(s:string);
var x:string;
    j,p,n:integer;
    A:array[1..50] of string;
begin
writeln('Slova sosedi: ');
delete(s,length(s),1);
j:=0;
repeat
inc(j);
p:=pos(', ',s);
x:=copy(s,1,p-1);
if p=0 then x:=s;
A[j]:=x;
delete(s,1,p+1);
until p=0;
n:=j;
for j:=2 to n-1 do
if (A[j-1]=A[j+1]) then writeln(A[j+1]);
end;
{--------------------------------------------------------------}
 
begin
write('Vvedite stroky slov otdelennymi zapyatymi + probelami: ');
readln(s);
writeln;
 sosedi(s);
writeln;
 writeln('Ishodnaya posledovatelinosti: ',s);
readln;
end.      
Поделиться:

Похожие статьи: