Задача найти и заменить слово, введенное с клавиатуры на другое, в массиве строк. Желательно в виде функции.
В чем затруднение? Стандартный поиск с FOR, POS, потом DELETE и INSERT
Пробовал, но у меня зацикливает-препод мняет "баба" на "баобаба".
Так ты покажи, что сделал. Подправим.
Ну вот она:
begin
write ('Find: ');
readln (w1);
write ('Change: ');
readln (w2);
while pos(w1,s)>0 do
begin
delete(s,pos(w1,s),length(w1));
insert(w2,s,pos(w1,s));
end;
for i:=1 to length (s) do
write (s[i]);
end;
Ну, скажем, начать исправлять уже отсюда:
delete(s,pos(w1,s),length(w1));
insert(w2,s,pos(w1,s)); { <--- После удаления части строки в предыдущем операторе ??? }
Куда записывать позицию если слово не одно? В массив?
Примеры приводи, или выражайся как-нибудь так, чтобы было понятно. ГДЕ не одно слово?
В тексте надо заменить все слова на введенное с клавиатуры, как в Ворде.