г. Nules, я напряг свои мозги, и сделал требуемую схему. И она даже работает. В процессе пришлось несколько поменять алгоритм заполнения строки проблеами до заданной длины:
* После набора максимально длинной строки (Lcur) вычисляем, сколько нам не хватает пробелов до заданной длины (Nsp = Lmax - Lcur)
* Делим Nsp нацело (div) на число промежутков между словами (Nw - 1) и добавляем 1, это даёт нам (минимальное) число пробелов между словами
* Считаем остаток (mod) от деления Nsp на (Nw - 1) - это даст нам число позиций (Isp) , в которые надо будет вставлять дополнительный пробел
* Теперь для каждого слова W:
** Присоединяем сзади строку из пробелов длины Nsx
** Если порядковый номер слова меньше Isp, то присоединяем с конца ещё один пробел
** Полученное супер-слово присоединяем сзади к некой временной строке, которая содержит все уже обработанные супер-слова
* Полученную временную строку Trim-аем (удаляем лишние пробелы в конце строки) -> очередная строка готова
Ответов: 5446
Рейтинг: 323
|
|||
карма: 1 |
|