Генерация и составление предложений из фрагментов текста

Цена договорная
27 мая 2024, 17:40 • 2 отклика • 48 просмотров
Всем привет, знаю что нужно, но на основе ваших вопросов немного отредактирую задание.

Изначально планировалось реализовать задачу макросами в Excel, но если предложите и аргументируете, другое исполнение. Выслушаю.

Реализовать 2 функции:
1) Генерация
2) Склейка (с учетом указанной длины строки)

!!! Функции также должны работать и по отдельности, т.к. первая функция может быть проделана в ручную.
Причем первой нужно сделать "Склейку", но учитывать, что в обе функции могут работать вместе.

===========
1.Генерация
===========

Задаем максимальное кол-во знаков для генерируемой строки. На данный момент актуальная длина = 81 знак (но значение часто меняется)

Опция: Учитывать знаки препинания: Да/Нет
1) Да = Подсчет длины с учетом всех знаков и пробелов (т.е. длина строки не может быть больше 81 знака)
2) Нет = Игнорируем знаки препинания при подсчете длины (пробелы считать и длина может быть больше 81 знака)

Исходные данные: Неограниченное кол-во столбцов с фразами

Каждому столбцу назначаем приоритет, для выполнения 2х условий:
1) Если при генерации самых коротких фраз из столбцов не укладываемся в указанную максимальную длину строки, генерируем заново, исключая столбцы от менее значимых к более значимым.
2) Для режима "Быстрый", записывает первое значение, которое сгенерировалось, с учетом приоритета столбцов.

2 РЕЖИМА:
1) Быстрый
--> Выводит первый сгенерированный вариант (без перебора) на основе пометок о приоритетных столбцах

2) Детальный
--> Генерируются все возможные варианты с одинаковой длиной, и перед выводом конечного значения, дает выбрать нужный в ручную.

=========
2.Склейка
=========

Задаем максимальное кол-во знаков для склеенной строки. На данный момент актуальная длина = 81 знак (но значение часто меняется)

Опция: Учитывать знаки препинания: Да/Нет
1) Да = Подсчет длины с учетом всех знаков и пробелов (т.е. длина строки не может быть больше 81 знака)
2) Нет = Игнорируем знаки препинания при подсчете длины (пробелы считать и длина может быть больше 81 знака)

Есть 2 списка:
1) Неограниченный список фраз, к которым нужно дописывать следующий список текстов.
2) Ограниченный список текстов разной длины (обычно от 1 знака (например "!") до указанной максимальной длины)

В РЕЗУЛЬТАТЕ должны получить строку из "фраза+подобранный текст" в рамках указанной максимальной длины и учетом опции (с учетом знаков препинания или без)

Оформление конечного списка:
1) Строго сохранить сортировку по первому списку фраз
2) Сохранить формат написания, заданный изначально в списке фраз (например написание брендов с заглавной)
3) Все строки начинаются с заглавной буквы (начальный список фраз может быть как с маленьких, так и с заглавных букв)
4) Обязательно вывести информацию о количестве знаков и пометку, учитывались ли при подсчете длины знаки препинания или нет.

!Оцените стоимость и обязательно укажите при отклике на задание.