Цитата:
Сообщение от snakind
единственный вопрос
Какую нагрузку несёт в строке
str:=Copy(stmp,i1,i2-i1);
действие i2-i1 ?
|
Да... ну тут, видимо, придется подробно расписать алгоритм, тогда всё станет понятно.
1. Считываем исходную строку (s).
2. Будущей результирующей строке (stmp) присваиваем значение исходной строки s. Дальше работаем только с stmp.
3. В строке stmp находим очередное слово. i1 - это порядковый номер первой буквы слова, i2 - символа, следующего за последней буквой.
4. Командой (функцией) Copy копируем найденное слово в строку str. При этом в параметрах команды нужно указать откуда копируем (stmp), номер позиции символа исходной строки, начиная с которого копируем (i1), и количество копируемых символов (i2-i1).
5. В str проводим перестановку букв, выстраивая их по алфавиту.
6. Командой (процедурой) Delete удаляем из stmp старое слово. Опять же указываем строку, позицию первого символа, количество символов.
7. Командой (процедурой) Insert вставляем преобразованное слово. Параметры команды - что вставляем (str), во что вставляем (stmp), начиная с какой позиции вставляем (i1).
8. Перебрав все слова и выведя на экран результат, радуемся жизни.