Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Строки проверьте

Автор: Янычар 2.01.2007 16:57

Проверьте правильность работы программы: Вводится строка слов через пробелы каждое слово, требуцется удалить те слова которые встречаются три раза не болеее не менее
Program stroki;
var s,h,p:string;
pos,posite,fal,fal2,del,del2,m:integer;
writeln('enter the length');
readln(h);
p:=h;
repeat
probel:=pos(' ',p);{определяет позицию пробела в строке}
s:=copy(p,0,probel-1);{копирует в строку s первое слово из строки p}
posite:=pos(s,h);{определяет позицию строки s в s}
m:=length(s);
delete(p,0,probel);{удаляет из строки p первое слово}
del:=pos(s,p);
fal:=pos(s,p)+m;{позиция второго слова строки s в строке h с учетом что из строки р было удалено одно слово длиной m }
if fal<>m then
delete(p,del,m);
fal2:=pos(s,p)+2*m;{позиция третьего слова так же как и первого}
del2:=pos(s,p);
if fal2<>2*m then
begin
delete(h,posite,m);{удаление трех одинаковых слов }
delete(h,fal,m);
delete(h,fal2,m);
end;
until c=0;
writeln(h);
end.

Автор: volvo 2.01.2007 17:04

Цитата
Проверьте правильность работы программы
Во-первых, пользуйся тегами, а во-вторых, приведи программу ХОТЯ БЫ к виду, когда она компилируется (если уж ТАК нужно соорудить свой велосипед)...