Напишите трудную в кодировании программку на паскале(всякую).
Напишите трудную в кодировке программу на паскале(всякую).
Задать свой вопрос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)gt;0 doпока есть 2 пробела рядом(в апострофах 2 пробела)
delete(s,pos(' ',s),1);1 пробел устраняем
if s[1]=' ' then delete(s,1,1);если 1-ый знак пробел, тоже устраняем
k:=0;
while pos(' ',s)gt;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;выходим из программки, необходимо только 1 пару
end;
delete(s,1,pos(' ',s));устраняем 1-ое слово, последующее 1-ое
end;
if k=0 then write('Нет 2-ух одинаковых слов');
readln
end.
https://pastebin.com/iBg0qVwg Залил тебе на пастибин, что-бы для тебя удобней было.
-
Вопросы ответы
Статьи
Информатика
Статьи
Математика.
Разные вопросы.
Разные вопросы.
Математика.
Разные вопросы.
Математика.
Физика.
Геометрия.
Разные вопросы.
Обществознание.