ОСТОРОЖНО МОШЕННИКИ! В последнее время в соиальных сетях учстились случаи педложения помощи в написании прогамм от лиц, прикрвающихся сайтом vscode.ru. Мы никогда не пишем первыми и не размещаем никакие материалы в псторонних группах ВК. Для связи с нами используйте исключительно эти контакт: vscoderu@yandex.ru, https://vk.com/vscode


Выравнивание текста по ширине


В этой статье вашему вниманию будет представлен исходный текст и разбор программы, выравнивающей текст по ширине, за счет увеличения количества пробелов между словами.

Итак, имеется матрица символов размером [n, m], предполагается, что в каждой строке есть хотя бы один пробел, за которым следует любой другой символ. За счет изменения групп пробелов каждой строки нужно добиться того, что бы текст был выровнен по ширине, при этом внутри одной строки количество пробелов в каждой группе пробелов между словами должно отличаться не более чем на единицу.

Ввод и вывод будем осуществлять из файла.

Поясню, что происходит в коде программы построчно:

5-6: Открываем файл input.txt для чтения входных данных.

9-15: Ищем самую длинную строку и заносим ее длину в переменную m.

16: Возвращаемся к началу файла.

17-18: Открываем или создаем файл output.txt для вывода результата работы программы.


21-49: Цикл от начала, до конца входного файла. Запоминаем текущую позицию начала данной строки во входном файле, считаем количество пробелов в этой строке, возвращаемся к началу этой строки, посимвольно выводим в output.txt текущую строку с нужным количеством пробелов между словами, тем самым выравниваем текст по ширине, обрабатываем так же следующую строчку, и так до конца файла.

50-51: Закрываем входной и выходной файлы.

Демонстрация работы программы. Исходной текст:

AlignTextToTheWidth1

Обработанный текст, выровненный по ширине:

AlignTextToTheWidth2

Скачать исходник можно, нажав на кнопку ниже.

Скачать исходник

 

5/5 - (3 голоса)



Поделиться в соц. сетях:

Добавить комментарий

Ваш адрес email не будет опубликован.