Текст = "";
ВвестиСтроку(Текст, "Введите текст");
Текст = НРег(Текст);
ЗнакиПрепинания = ".,!?:;-()";
Слова = Новый Массив;
ТекущееСлово = "";
МыВСлове = Ложь;
ДлинаТекста = СтрДлина(Текст);
Для А = 1 По ДлинаТекста Цикл
Символ = Сред(Текст, А, 1);
Если Символ = " " Или Найти(ЗнакиПрепинания, Символ) > 0 Тогда
Если МыВСлове Тогда
Слова.Добавить(ТекущееСлово);
ТекущееСлово = "";
КонецЕсли;
МыВСлове = Ложь;
Иначе
МыВСлове = Истина;
ТекущееСлово = ТекущееСлово + Символ;
КонецЕсли;
КонецЦикла;
Если МыВСлове Тогда
Слова.Добавить(ТекущееСлово);
КонецЕсли;
// Сортировка массива пузырьком по возрастанию длины слов
Пока Истина Цикл
БылиПерестановки = Ложь;
Для Шаг = 0 По Слова.Количество() - 2 Цикл
Если СтрДлина(Слова[Шаг]) > СтрДлина(Слова[Шаг + 1]) Тогда
Буфер = Слова[Шаг];
Слова[Шаг] = Слова[Шаг + 1];
Слова[Шаг + 1] = Буфер;
БылиПерестановки = Истина;
КонецЕсли;
КонецЦикла;
Если БылиПерестановки = Ложь Тогда
Прервать;
КонецЕсли;
КонецЦикла;
// Собираем отсортированные слова в одну строку для всплывающего окна
Результат = "";
Для Каждого Слово Из Слова Цикл
Результат = Результат + Слово + " ";
Сообщить(Слово);
КонецЦикла;
ОткрытьЗначение(Результат);
```[span_1](start_span)[span_1](end_span)
---
### 📷 Что делать и заскриншотить
1. Вставь код в окно **«Модуль приложения»**[span_2](start_span)[span_2](end_span).
2. Нажми **`F5`**[span_3](start_span)[span_3](end_span).
3. В появившемся окне ввода вставь пример из методички:
`Мой дядя самых честных правил, когда не в шутку занемог`[span_4](start_span)[span_4](end_span)
*(заскриншоть окно с введенной строкой)*[span_5](start_span)[span_5](end_span).
4. Нажми **«ОК»** — прямо по центру выскочит окно со словарем, отсортированным от коротких слов к длинным:
`в не мой дядя самых когда шутку правил честных занемог`[span_6](start_span)[span_6](end_span)
*(заскриншоть это окно с готовым результатом)*[span_7](start_span)[span_7](end_span).