Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.03.2013, 09:36   #1
lolwto
Пользователь
 
Регистрация: 02.12.2012
Сообщений: 50
По умолчанию Работа со строками

Даны: строки S и S0. Удалить из строки S все подстроки совпадающие с S0. Если совподающих нет вывести строку S без изменений.
lolwto вне форума Ответить с цитированием
Старый 29.03.2013, 10:18   #2
interacia
Пользователь
 
Аватар для interacia
 
Регистрация: 24.01.2013
Сообщений: 67
По умолчанию

Код:
Program String1;
var

S0:string; 
S:string; 
begin
// ввод данных
Write('Введите строку S ');
readln(S);
Write('Введите строку S0 ');
readln(S0);
// решение
while Pos(S0,S)>0 do
begin
Delete(S,Pos(S0,S),length(S0));
end;
// вывод результата
Writeln('Ответ ');
Writeln(S);
end.
interacia вне форума Ответить с цитированием
Старый 29.03.2013, 11:19   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

interacia, ваш вариант решения не всегда будет работать корректно.

например.
задана строка:
Ескокоддть - лаккододжа
и подстрока код
очевидно, что должно быть удалено:
Ескокоддть - лаккододжа

а теперь запустите свою программу.
Полученный ответ - ожидаем?
Serge_Bliznykov вне форума Ответить с цитированием
Старый 29.03.2013, 13:16   #4
Zer0
Форумчанин
 
Аватар для Zer0
 
Регистрация: 13.12.2007
Сообщений: 788
По умолчанию

Думаю такое будет чуть более верным
Код:
S0:string; 
S:string; 
i: integer;
begin
// ввод данных
Write('Введите строку S ');
readln(S);
Write('Введите строку S0 ');
readln(S0);
for i:=1 to (Length(s)-Length(s0)+1) do
  if Copy(s,i,Length(S0))=S0 then
    Delete(S,i,Length(S0));
Writeln('Ответ ');
Writeln(S);
end.
благодарность - сюда (не забываем писать от кого)
Zer0 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
С++ работа со строками noname1 Помощь студентам 15 11.01.2011 22:02
Работа с матрицами (норма матрицы, работа со строками) Neitrosha Помощь студентам 1 26.11.2010 20:19
Работа со строками Pormonik Помощь студентам 0 20.05.2010 23:44
работа со строками Андрей.12 Помощь студентам 3 15.11.2009 19:42
Работа со строками. Galacticus Общие вопросы C/C++ 0 11.03.2009 16:49