ПАСКАЛЬ Дано предложение с 2умя одинаковыми словами. Найти эти слова

0 голосов
30 просмотров
ПАСКАЛЬ
Дано предложение с 2умя одинаковыми словами. Найти эти слова

Информатика (64 баллов) | 30 просмотров
0

нет

Дан 1 ответ
0 голосов
Правильный ответ

Uses crt;
const zn=[' ',':',',','!','?','-',';',')'];
var s,s1,s2:string;
i,k:byte;
begin
clrscr;
writeln('Введите строку, содержащую 2 одинаковых слова:');
readln(s);
s:=s+' ';
for i:=1 to length(s) do
if s[i] in zn then s[i]:=' ';
while pos(' ',s)>0 do
delete(s,pos(' ',s),1);
if s[1]=' ' then delete(s,1,1);
k:=0;
while pos(' ',s)>0 do
begin
s1:=copy(s,1,pos(' ',s)-1);
for i:=pos(' ',s)+1 to length(s) do
if (copy(s,i,length(s1))=s1)
and(s[i-1]=' ')
and((s[i+length(s1)]=' ')
or(i+length(s1)-1=length(s))) then
begin
k:=1;
s2:=s1;
write('Одинаковые слова ',s2);
readln;
exit;
end;
delete(s,1,pos(' ',s));
end;
if k=0 then write('Нет двух одинаковых слов');
readln
end.