IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> чередование слов в строке
18192123
сообщение 20.12.2006 19:02
Сообщение #1


Профи
****

Группа: Пользователи
Сообщений: 920
Пол: Женский
Реальное имя: Марина

Репутация: -  2  +


Даны две строки, состоящие из слов. Получить строку, в которой чередуются слова первой и второй строки. Если в одной из строк слов больше, чем в другой, то оставшиеся слова этой строки дописать подряд в строку-результат.

помогите пожалуйста с алгоритмом чередования слов

????????? wacko.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
18192123
сообщение 20.12.2006 20:18
Сообщение #2


Профи
****

Группа: Пользователи
Сообщений: 920
Пол: Женский
Реальное имя: Марина

Репутация: -  2  +


слова могут разделяться только пробелом. А как решать мою задачу без массивов?
Кстати, нужно без copy, delete.

Сообщение отредактировано: 18192123 - 20.12.2006 20:21
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 20.12.2006 20:59
Сообщение #3


Гость






Цитата(18192123 @ 20.12.2006 19:18) *
Кстати, нужно без copy, delete.

В принципе, не очень-то и хотелось smile.gif

Вполне реально обойтись БЕЗ них...

var
s, T, s1, s2: string;
i, j: integer;
res: string;

did_it: boolean;
b: boolean;

begin
s1 := 'one two three four five';
{ s2 := 'raz dva tri chetire pyat shest sem'; }
s2 := 'raz dva tri';
res := '';

s := s1;
T := s2 + ' ';

i := 1; j := 1;
did_it := false;
repeat

for b := false to true do
while (i <= length(s)) and ((s[i] = ' ') = b) do begin
res := res + s[i]; inc(i);
end;

if (i > length(s)) then begin
if not did_it then begin
res := res + ' ';
did_it := true;
end;
end;

for b := false to true do
while (j <= length(T)) and ((T[j] = ' ') = b) do begin
res := res + T[j]; inc(j);
end;

until (i > length(s)) and (j > length(T));
writeln('result = ', res);

end.
(дополнительные строки - только для того, чтобы НЕ портить исходные... Так было бы достаточно трех строк)
 К началу страницы 
+ Ответить 

Сообщений в этой теме
18192123   чередование слов в строке   20.12.2006 19:02
мисс_граффити   разбиваешь на слова, получаешь 2 массива. потом из...   20.12.2006 19:08
klem4   Можно и без дополнительной строки :rolleyes:   20.12.2006 19:32
мисс_граффити   Можно и без дополнительной строки :rolleyes: то...   20.12.2006 19:52
volvo   18192123, чем могут разделяться слова в строках?   20.12.2006 19:37
volvo   Юля, я как раз о принципиально ином способе - без ...   20.12.2006 19:55
мисс_граффити   Юля, я как раз о принципиально ином способе - без...   20.12.2006 20:11
klem4   Я вот это и имел в виду (только удалять правда н...   20.12.2006 20:12
мисс_граффити   Я вот это и имел в виду (только удалять правда не...   20.12.2006 20:18
18192123   слова могут разделяться только пробелом. А как реш...   20.12.2006 20:18
volvo   Кстати, нужно без copy, delete. В принципе, не оче...   20.12.2006 20:59
18192123   [code=pas]var s, T, s1, s2: string; i, j: i...   5.01.2007 12:34
klem4   Эм, ну массивы в принципе тоже не нужны :) Ладно...   20.12.2006 20:23
мисс_граффити   без copy и delete хуже :( insert можно?   20.12.2006 20:34
18192123   без copy и delete хуже :( insert можно? увы, нел...   20.12.2006 20:38
мисс_граффити   можно еще так: заводим новую строку, посимвольно п...   20.12.2006 20:43
volvo   А тебе что, удобнее делать Copy+Paste? Сначала - о...   5.01.2007 13:11
18192123   Я не поняла, за счёт чего чередуются слова, ведь у...   10.01.2007 13:06
volvo   Угу... Вот именно за счет этих двух циклов и черед...   10.01.2007 13:48


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 20.07.2025 2:36
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"