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

 
 Ответить  Открыть новую тему 
> обратный порядок слов
сообщение
Сообщение #1


Профи
****

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

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


Преобразовать строку, изменив порядок следования слов на обратный.

А каков алгоритм такого преобразования?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Знаток
****

Группа: Пользователи
Сообщений: 424
Пол: Мужской

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


пункт 1.
бьешь на массив слов и пробегаешь в обратном порядке.
пункт 2
поиск


--------------------
Чего хочет женщина – того хочет Бог
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

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


В цикле находишь следующее слово в строке s1 и вставляешь его в строку s2 на первую позицию (процедура Insert).

тема переезжаетв алгоритмы..


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Perl. Just code it!
******

Группа: Пользователи
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

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


Ну во первых наверняка тебе опять ничем нельзя пользоваться ? Pos, Delete, Insert ... Написать ты об этом забыла ?


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Профи
****

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

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


Цитата(klem4 @ 6.01.2007 14:02) *

Ну во первых наверняка тебе опять ничем нельзя пользоваться ? Pos, Delete, Insert ... Написать ты об этом забыла ?

Прощу прощения, ты абсолютно прав.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

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


Цитата(18192123 @ 6.01.2007 15:29) *

Прощу прощения, ты абсолютно прав.

Ха.
А чем можно?


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Знаток
****

Группа: Пользователи
Сообщений: 424
Пол: Мужской

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


А чем не устраивает мой способ с помощью массива?


--------------------
Чего хочет женщина – того хочет Бог
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Гость






18192123, давай ты будешь определять задания ПОЛНОСТЬЮ, договорились?

Разделители между словами? Должен ли их порядок и количество сохраняться в строке - результате (arhimag, если ответ на предыдущий вопрос - "Да", то твой способ идет лесом)? Доступные средства для реализации... Почему надо все клещами вытягивать постоянно?
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Знаток
****

Группа: Пользователи
Сообщений: 424
Пол: Мужской

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


делая аналогию с предыдущими заданиями 18192123, то разделитель - только пробел.
вывод сделан из
Цитата

у меня получилось разбить на слова первую строку, больше ничего не могу сделать...
не пойму, как сравнить со второй...( даже с использованием функции function _Pos(const subS, s: String): Integer)

Код

Function slovo ( const s : string; var i : byte) : string;
var
w : string;
begin
w := '';
while ( i <= length (s) ) and ( s[i] <> ' ' ) do
      begin
           w := w + s[i];
           i := i+1;
      end;
slovo := w;
end;



Сообщение отредактировано: arhimag -


--------------------
Чего хочет женщина – того хочет Бог
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10


Профи
****

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

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


Цитата(volvo @ 6.01.2007 15:08) *

18192123, давай ты будешь определять задания ПОЛНОСТЬЮ, договорились?

Разделители между словами? Должен ли их порядок и количество сохраняться в строке - результате (arhimag, если ответ на предыдущий вопрос - "Да", то твой способ идет лесом)? Доступные средства для реализации... Почему надо все клещами вытягивать постоянно?


Слова могут разделяться только пробелами. Их количество в строке результате не меняется, порядок следования символов в словах остаётся неизменным ( например, исходная строка acs dfr, результат dfr acs)
Для строк использовать только length, chr, ord.




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


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

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


18192123 (и все уважаемые участники беседы), я несколько обескуражен.
Мне кажется, начальное задание было поставлено довольно четко. Деталей не было, поскольку спрашивался алгоритм. В соответствии с этим я перенес тему в более подходящий раздел и описал агоритм в общих чертах (упоминание Insert'а было факультативным, в скобках). arhimag также привел свой вариант. Конкретная реализация могла быть различной.. Если требуются дальнейшие уточнения алгоритма - пожалуйста, тема к услугам всех. Что касается реализации - склонен считать флудом. Так что рекомендую 18192123 создать новую тему с правильным и полным условием на этот раз..


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #12





Группа: Пользователи
Сообщений: 1
Пол: Мужской

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


Не хочется создавать новую тему, но можно увидеть работающий код для этой задачи с использованием pos, insert, delete?

Благодарю всех за любую помощь.

Сообщение отредактировано: steet -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #13


просто человек
******

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

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


Безусловно, можно.
Для этого (если Вас не затруднит) выполните несложный ряд действий:
1. Прочитайте, пожалуйста, то, что здесь уже написали.
2. Воспользуйтесь поиском или изучите прикрепленную в Задачах тему "Разбиение на слова".
3. Соберите все воедино и напишите работающий код для этой задачи (с использованием pos, insert, delete).

Надеюсь, что ни один из пунктов не противоречит Вашим принципам.
Альтернативный путь:
Создайте тему в Задачах на заказ.



--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #14


Гость






Всем кому нужно:

program slova;
uses crt;
var
x,k,len : byte;
str,buf : string;
procedure PrintString(var buf : string ; var k : byte);
var
i : byte;
begin
if k=1 then begin
write(' ');
buf:='';
end
else
begin
i:=k;
while i>=1 do begin
write(buf[i]);
i:=i-1;
end;
write(' ');
buf:='';
end;
end;
begin
clrscr;
writeln('Vvedite slova:');
readln(str);
writeln;
writeln('Resultat:');
k := 1;
x := length(str);
if length(str)=1 then writeln(str);
while x>=1 do begin
if (str[x]=' ') or (x=1) then
begin
if x=1 then else k:=k-1;
PrintString(buf,k);
k:=1;
end
else
begin
buf[k]:=str[x];
if x=2 then buf[k+1]:=str[x-1];
k:=k+1;
end;
x:=x-1;
end;
writeln;writeln;
write('Press any key to quit...');
readkey;
end.


М
Теги, господа, теги!! Это требование правил! И здравого смысла.. Lapp

 К началу страницы 
+ Ответить 

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

 





- Текстовая версия 29.03.2024 6:27
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name