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

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

Форум «Всё о Паскале» _ Задачи _ помогите решить задачу по обработке строк

Автор: tryno 20.12.2006 1:30

Известно, что в начале строки S не более 40 латинских букв, за которыми следуют пробелы.
Напечатайте эту строку,
предварительно заменив все последовательности abc последовательностями def.

Автор: Lapp 20.12.2006 10:43

Цитата(tryno @ 19.12.2006 22:30) *

Напечатайте эту строку,

Я не вполне понял, что именно надо напечатать - только буквы или всю строку с пробелами?
Если всю строку, то и вовсе непонятно, зачем информация про 40 букв (хотя все равно не очень понятно)..
Короче, вот фрагмент, который определяет, где начинаются пробелы, а потом заменяет 'abc' на 'def' и печатает этот кусок..
  n:=0;
while not(s[n+1]=' ') do Inc(n);
for i:=3 to n do if Copy(s,i-2,3)='abc' then begin
Delete(s,i-2,3);
Insert('def',s,i-2)
end;
WriteLn(Copy(s,1,n))


Автор: tryno 20.12.2006 20:40

спасибо, все получилось.