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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.12.2011, 22:15   #1
Undefitied
Пользователь
 
Регистрация: 08.12.2011
Сообщений: 11
По умолчанию Задача со строками

Исключить из строки символы, расположенные между скобками, сами скобки не исключать.
*Предполагается, что внутри каждой пары скобок нет другой скобки
Undefitied вне форума Ответить с цитированием
Старый 08.12.2011, 22:19   #2
JuniorProger
Форумчанин
 
Регистрация: 16.09.2011
Сообщений: 114
По умолчанию

Ищешь позицию для "(", затем для ")" и удаляешь все символы между ними и так далее. Что сложного то?
JuniorProger вне форума Ответить с цитированием
Старый 08.12.2011, 22:19   #3
Undefitied
Пользователь
 
Регистрация: 08.12.2011
Сообщений: 11
По умолчанию

У меня возникла проблема с "сами скобки не исключать"


Последний раз редактировалось Undefitied; 08.12.2011 в 22:22.
Undefitied вне форума Ответить с цитированием
Старый 08.12.2011, 22:22   #4
JuniorProger
Форумчанин
 
Регистрация: 16.09.2011
Сообщений: 114
По умолчанию

Так в чем проблема? Не исключай
JuniorProger вне форума Ответить с цитированием
Старый 08.12.2011, 22:23   #5
Undefitied
Пользователь
 
Регистрация: 08.12.2011
Сообщений: 11
По умолчанию

Добавил скрин, только там на скрине нечайно исправил строчку, "у" забыл в delete.
Сам не додумываюсь
Undefitied вне форума Ответить с цитированием
Старый 08.12.2011, 22:27   #6
JuniorProger
Форумчанин
 
Регистрация: 16.09.2011
Сообщений: 114
По умолчанию

В delete надо не у а количество символов! сделай у=i. Тогда delete(s,x,y-x). Ну или в твоем варианте delete(s,x,y-x+1)
JuniorProger вне форума Ответить с цитированием
Старый 08.12.2011, 22:29   #7
Undefitied
Пользователь
 
Регистрация: 08.12.2011
Сообщений: 11
По умолчанию

Фу епт) спс
Undefitied вне форума Ответить с цитированием
Старый 09.12.2011, 14:10   #8
Undefitied
Пользователь
 
Регистрация: 08.12.2011
Сообщений: 11
По умолчанию

Возникла проблема: программа удаляет только элементы между первой пары скобок.
Undefitied вне форума Ответить с цитированием
Старый 09.12.2011, 20:54   #9
Leshii
Форумчанин
 
Регистрация: 26.07.2011
Сообщений: 376
По умолчанию

а цикл добавить перед delete не пробовал

Код:
for i:=1 to length(s) do begin 
// удаление
//вывод
end;
Вопросы?
Люблю на ты.Я человек простой
Leshii вне форума Ответить с цитированием
Старый 09.12.2011, 22:04   #10
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Код:
var
s:string;
buf:string;
begin
s:='(ssss Sssdsds)(SDsdsdsD)Sdsds(SSD)(dsdsdss)';
buf:='';
while (pos('(',s)<>0) and  (pos(')',s)<>0) do
begin
buf:=buf+copy(s,1,pos('(',s))+')';
delete(s,1,pos(')',s));
end;
buf:=buf+s;
writeln(buf);
end.
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"
Mad_Cat вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задача со строками. (C++) malisheshka Помощь студентам 6 22.11.2011 23:25
Задача в С++ со строками Алексей6565 Visual C++ 0 21.05.2011 21:01
Задача со строками Panda Помощь студентам 8 02.07.2008 09:10
Задача со строками Klyan Общие вопросы C/C++ 6 21.09.2007 22:22