Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Строки

Автор: Robin 7.01.2006 0:47

Помогите пожалуйста решить эти задачи.Я в поиск заходил но не нашел ни одной подобной задачи.
1. Удвоить все буквы ‘о’, встречающиеся в словах.
2. Определить, имеются ли в последовательности слова, в которых все буквы различны.
3. Слова, начинающиеся с буквы ‘а’, расположить в начале последовательности, сохраняя исходный порядок следования слов.

Автор: volvo 7.01.2006 0:58

Цитата(Robin @ 6.01.2006 19:47)
1. Удвоить все буквы ‘о’, встречающиеся в словах.

  i := 1;
while i <= length(s) do begin
if s[i] = 'o' then insert('o', s, i)
else dec(i);

inc(i, 2);
end;


Цитата(Robin @ 6.01.2006 19:47)
3. Слова, начинающиеся с буквы ‘а’, расположить в начале последовательности, сохраняя исходный порядок следования слов.

Не понял... так изменять или не изменять порядок слов? Как ты можешь расположить какие-то слова в начале, сохраняя при этом порядок следования?

Автор: Гость 7.01.2006 1:07

Спасибо за помощь к 1 задаче.
В 3 задаче имеется ввиду оставить те слова которые не начинаются на букву 'а' на своем месте.

Автор: volvo 7.01.2006 2:33

Ну, тогда разбить строку на слова: http://forum.pascal.net.ru/index.php?s=&showtopic=6972&view=findpost&p=50609 (лучше - именно тем способом, на который ведет ссылка), а потом:

  s := ''; T := '';
for i := 1 to n do
if w[i][1] = 'a' then T := T + w[i] + ' '
else s := s + w[i] + ' ';

writeln(T + s);

Автор: Robin 7.01.2006 16:51

Спасибо за помощь к 3 задаче.
ИСТИНА ГДЕ-ТО РЯДОМ!!!!!!!!!!!!!!!!