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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 23.04.2008, 22:53   #1
f1n!Sh
Пользователь
 
Регистрация: 07.02.2008
Сообщений: 15
Восклицание Помогите с задачей на Делфи!

Задача:
Дана строка S,содержащая менее 150 символов.Преобразовать данную последовательность символов,заменив каждую точку многоточием(т.е тримя точками)Желательно с использованием самых простых процедур и функций...зарание СПАСИБО!!
f1n!Sh вне форума Ответить с цитированием
Старый 23.04.2008, 22:55   #2
Карась
Участник клуба
 
Аватар для Карась
 
Регистрация: 26.10.2007
Сообщений: 1,244
По умолчанию

Вы не поверите, но я это уже комуто решал.....
Память немного подвела... Решалась обратная задача....
Решение этой задачи проще сделать по варианту из 2-ого поста немного изменив код.
http://programmersforum.ru/showthread.php?t=12694
Умом Россию не понять, пока не выпито ноль пять,
А если выпито ноль пять всё делом кажется не хитрым,
Попытка глубже понимать уже попахивает литром...

Последний раз редактировалось Карась; 23.04.2008 в 23:02.
Карась вне форума Ответить с цитированием
Старый 23.04.2008, 23:06   #3
f1n!Sh
Пользователь
 
Регистрация: 07.02.2008
Сообщений: 15
По умолчанию

Цитата:
Сообщение от Карась Посмотреть сообщение
Вы не поверите, но я это уже комуто решал.....
Память немного подвела... Решалась обратная задача....
Решение этой задачи проще сделать по варианту из 2-ого поста немного изменив код.
http://programmersforum.ru/showthread.php?t=12694


спасибо большоееее!!!!!!!!!!!!
f1n!Sh вне форума Ответить с цитированием
Старый 02.05.2008, 18:14   #4
Katovski
Дружусь с Delphi
Пользователь Подтвердите свой е-майл
 
Аватар для Katovski
 
Регистрация: 02.05.2008
Сообщений: 33
По умолчанию

Спасибо за труды, она немножко не так ищет, она все заменяет, а нужно чтоб точку на три точки меняла и возвращала опять же все строку , но уже измененную

procedure TForm1.Button1Click(Sender: TObject);
var d:integer;
s:string;
begin
d:=1;
s:='Привет. Гы... Привет';
repeat
if copy(s, d, 1)='.' then begin
insert('..', s, d);
inc(d,2);
end;
inc(d)
until d>length(s);
edit1.Text:=s;
end;
Katovski вне форума Ответить с цитированием
Старый 02.05.2008, 18:17   #5
Карась
Участник клуба
 
Аватар для Карась
 
Регистрация: 26.10.2007
Сообщений: 1,244
По умолчанию

Тоесть если в строке встретится подряд 10 точек то должно получиться 30 точек?
Умом Россию не понять, пока не выпито ноль пять,
А если выпито ноль пять всё делом кажется не хитрым,
Попытка глубже понимать уже попахивает литром...
Карась вне форума Ответить с цитированием
Старый 02.05.2008, 18:21   #6
eoln
Старожил
 
Аватар для eoln
 
Регистрация: 26.04.2008
Сообщений: 2,645
По умолчанию

Цитата:
Сообщение от f1n!Sh Посмотреть сообщение
Задача:
Дана строка S,содержащая менее 150 символов.Преобразовать данную последовательность символов,заменив каждую точку многоточием(т.е тримя точками)Желательно с использованием самых простых процедур и функций...зарание СПАСИБО!!
Цитата:
Спасибо за труды, она немножко не так ищет, она все заменяет, а нужно чтоб точку на три точки меняла и возвращала опять же все строку , но уже измененную

procedure TForm1.Button1Click(Sender: TObject);
var d:integer;
s:string;
begin
d:=1;
s:='Привет. Гы... Привет';
repeat
if copy(s, d, 1)='.' then begin
insert('..', s, d);
inc(d,2);
end;
inc(d)
until d>length(s);
edit1.Text:=s;
end;
Ну это и есть решение. Где была одна точка - стало 3, а где 3 точки - 9 точек (каждая из трёх была заменена 3+3+3)
В чем-то вопрос? Странно конечно, но таково условие
eoln вне форума Ответить с цитированием
Старый 02.05.2008, 18:24   #7
Katovski
Дружусь с Delphi
Пользователь Подтвердите свой е-майл
 
Аватар для Katovski
 
Регистрация: 02.05.2008
Сообщений: 33
По умолчанию

Цитата:
Сообщение от Карась Посмотреть сообщение
Тоесть если в строке встретится подряд 10 точек то должно получиться 30 точек?
Ой, наверное, но мне главное, чтоб он находил, менял и возвращал измененную строку. Надеюсь завтра сдам.
Katovski вне форума Ответить с цитированием
Старый 02.05.2008, 18:26   #8
Katovski
Дружусь с Delphi
Пользователь Подтвердите свой е-майл
 
Аватар для Katovski
 
Регистрация: 02.05.2008
Сообщений: 33
По умолчанию

Цитата:
Сообщение от eoln Посмотреть сообщение
Ну это и есть решение. Где была одна точка - стало 3, а где 3 точки - 9 точек (каждая из трёх была заменена 3+3+3)
В чем-то вопрос? Странно конечно, но таково условие
ну, он у меня почему то после нажатия на кнопочку выдал вашу строку s. А в условии то другое было. Но вроде бы у получается как Карась написал. Спасибо вам за помощь
Katovski вне форума Ответить с цитированием
Старый 02.05.2008, 18:28   #9
Katovski
Дружусь с Delphi
Пользователь Подтвердите свой е-майл
 
Аватар для Katovski
 
Регистрация: 02.05.2008
Сообщений: 33
По умолчанию

это читать не надо
Katovski вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Графика в Делфи, требуется помощь с задачей Natisha Помощь студентам 3 10.05.2008 00:25