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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 29.05.2012, 10:19   #1
kametto
Пользователь
 
Аватар для kametto
 
Регистрация: 28.12.2011
Сообщений: 12
По умолчанию удаление повторяющихся символов из строки

помогите составить программу которая удаляет все повторяющиеся символы из строк
kametto вне форума
Старый 29.05.2012, 10:52   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

из каких строк? как эти строки задаются? какой язык программирования, в конце-то концов?
Serge_Bliznykov вне форума
Старый 29.05.2012, 21:31   #3
kametto
Пользователь
 
Аватар для kametto
 
Регистрация: 28.12.2011
Сообщений: 12
По умолчанию

простите) это в delphi. я пишу строку в форму. и затем ниже мне должно показывать строку без повторяющихся символов. пишу в edit, показывает в label
kametto вне форума
Старый 29.05.2012, 21:41   #4
Hacker19_90
Delphi Warrior
Старожил
 
Аватар для Hacker19_90
 
Регистрация: 15.08.2008
Сообщений: 2,502
По умолчанию

Код:
i := 1;
while i <= length(edit1.text) do
begin
  for j := i+1 to length(edit1.text) do
    if edit1.text[i] = edit1.text[j] then
      delete(edit1.text, j, 1);
  inc(i);
end;
не проверял
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++
ya.flex-freelance@yandex.ru Icq - 636-954-303
Hacker19_90 вне форума
Старый 29.05.2012, 21:48   #5
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Код:
Function DeleteRepeatChar(s:string):string;
var buf:string;
begin
while length(s)<>0 do // пока строка s не пустая
begin
buf:=buf+s[1]; // забираем из нее 1 символ
while pos(buf[length(buf)],s)<>0 do delete(s,pos(buf[length(buf)],s),1); // и удаляем все его вхождения
end;
DeleteRepeatChar:=buf;
end;
использование
Код:
ss:=edit.text;
label.caption:=DeleteRepeatChar(ss);
Цитата:
мама мыла раму
ма ылру
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"

Последний раз редактировалось Mad_Cat; 29.05.2012 в 22:37.
Mad_Cat вне форума
Старый 29.05.2012, 22:29   #6
kametto
Пользователь
 
Аватар для kametto
 
Регистрация: 28.12.2011
Сообщений: 12
По умолчанию

Цитата:
Сообщение от Mad_Cat Посмотреть сообщение
Код:
Function DeleteRepeatChar(s:string):string;
var buf:string;
begin
while length(s)<>0 do
begin
buf:=buf+s[1];
delete(s,1,1);
while pos(buf[length(buf)],s)<>0 do delete(s,pos(buf[length(buf)],s),1);
end;
DeleteRepeatChar:=buf;
end;
использование
Код:
ss:=edit.text;
label.caption:=DeleteRepeatChar(ss);
спасибо но не могли бы вы дать краткий комментарий к каждой строке? я не совсем могу разобраться
kametto вне форума
Старый 29.05.2012, 22:36   #7
Hacker19_90
Delphi Warrior
Старожил
 
Аватар для Hacker19_90
 
Регистрация: 15.08.2008
Сообщений: 2,502
По умолчанию

Код:
Function DeleteRepeatChar(s:string):string;
var buf:string;
begin
while length(s)<>0 do //пока строка не пуста
begin
buf:=buf+s[1]; // запоминаем первый символ строки
delete(s,1,1);//удаляем
while pos(buf[length(buf)],s)<>0 do delete(s,pos(buf[length(buf)],s),1); //пока в строке есть сохранёный символ то удаляем его!
end;
DeleteRepeatChar:=buf; 
end;
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++
ya.flex-freelance@yandex.ru Icq - 636-954-303
Hacker19_90 вне форума
Старый 29.05.2012, 22:41   #8
kametto
Пользователь
 
Аватар для kametto
 
Регистрация: 28.12.2011
Сообщений: 12
По умолчанию

Цитата:
Сообщение от Hacker19_90 Посмотреть сообщение
Код:
Function DeleteRepeatChar(s:string):string;
var buf:string;
begin
while length(s)<>0 do //пока строка не пуста
begin
buf:=buf+s[1]; // запоминаем первый символ строки
delete(s,1,1);//удаляем
while pos(buf[length(buf)],s)<>0 do delete(s,pos(buf[length(buf)],s),1); //пока в строке есть сохранёный символ то удаляем его!
end;
DeleteRepeatChar:=buf; 
end;
спасибо большое
kametto вне форума
Старый 24.04.2013, 02:27   #9
ALex_WH
Новичок
Джуниор
 
Регистрация: 24.04.2013
Сообщений: 1
По умолчанию

Что нужно исправить, чтобы удалялись все символы, кроме пробела?
ALex_WH вне форума
Старый 24.04.2013, 07:27   #10
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
ALex_WH
Не лезь в чужую тему. Создавай свою.
I'm learning to live...
Stilet вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
С++ строки , удаление символов Bolisoff Помощь студентам 4 10.01.2012 00:46
[Pascal] Удаление символов из строки just4smth Помощь студентам 17 15.05.2011 21:15
Удаление символов из строки NAS1977mu Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 09.01.2011 13:05
Удаление символов из строки Jasper92 Общие вопросы C/C++ 1 17.01.2010 20:41
Удаление символов из строки stscolt Помощь студентам 0 28.12.2009 12:34