Анализ и форматирование текста

Text24◦. Дан текстовый файл. Найти количество абзацев в тексте, если абзацы

отделяются друг от друга одной или несколькими пустыми строками.

Text25. Дано целое число K и текстовый файл. Удалить из файла абзац с номе-

ром K (абзацы отделяются друг от друга одной или несколькими пустыми

строками). Пустые строки, предшествующие и следующие за удаляемым

абзацем, не удалять. Если абзац с данным номером отсутствует, то оста-

вить файл без изменений.

Text26. Дан текстовый файл. Найти количество абзацев в тексте, если пер-

вая строка каждого абзаца начинается с 5 пробелов («красная строка»).

Пустые строки между абзацами не учитывать.

Text27. Дано целое число K и текстовый файл. Удалить из файла абзац с

номером K (абзацы выделяются с помощью красной строки — см. задание

Text26). Пустые строки между абзацами не учитывать и не удалять. Если

абзац с данным номером отсутствует, то оставить файл без изменений.

Text28. Дан текстовый файл. Абзацы выделяются в нем с помощью красной

строки (см. задание Text26), а пустых строк нет. Вставить между сосед-

ними абзацами по одной пустой строке (в начало и конец файла пустые

строки не добавлять).

Text29. Дан текстовый файл. Вывести первое слово текста наибольшей длины.

Словом считать набор символов, не содержащий пробелов и ограничен-

ный пробелами или началом/концом строки.



Текстовые файлы



 

 

Text30. Дан текстовый файл. Вывести последнее слово текста наименьшей

длины. Словом считать набор символов, не содержащий пробелов и огра-

ниченный пробелами или началом/концом строки.

Text31. Дано целое число K и текстовый файл. Создать строковый файл и запи-

сать в него все слова длины K из исходного файла. Словом считать набор

символов, не содержащий пробелов, знаков препинания и ограниченный

пробелами, знаками препинания или началом/концом строки. Если исход-

ный файл не содержит слов длины K, то оставить результирующий файл

пустым.

Text32. Дан символ Cпрописная (заглавная) русская буква и текстовый

файл. Создать строковый файл и записать в него все слова из исходного

файла, начинающиеся на эту букву (прописную или строчную). Словом

считать набор символов, не содержащий пробелов, знаков препинания и

ограниченный пробелами, знаками препинания или началом/концом стро-

ки. Если исходный файл не содержит подходящих слов, то оставить ре-

зультирующий файл пустым.

Text33. Дан символ Cстрочная (маленькая) русская буква и текстовый

файл. Создать строковый файл и записать в него все слова из исход-

ного файла, содержащие хотя бы одну букву C (прописную или строч-

ную). Словом считать набор символов, не содержащий пробелов, знаков

препинания и ограниченный пробелами, знаками препинания или нача-

лом/концом строки. Если исходный файл не содержит подходящих слов,

то оставить результирующий файл пустым.

Text34◦ . Дан текстовый файл, содержащий текст, выровненный по левому

краю. Выровнять текст по правому краю, добавив в начало каждой непу-

стой строки нужное количество пробелов (ширину текста считать рав-

ной 50).

Text35. Дан текстовый файл, содержащий текст, выровненный по левому краю.

Выровнять текст по центру, добавив в начало каждой непустой строки

нужное количество пробелов (ширину текста считать равной 50). Строки

нечетной длины перед центрированием дополнять слева пробелом.

Text36. Дан текстовый файл, содержащий текст, выровненный по правому

краю. Выровнять текст по центру, удалив из каждой непустой строки по-

ловину начальных пробелов. В строках с нечетным количеством началь-

ных пробелов перед центрированием удалять первый начальный пробел.

Text37. Дан текстовый файл, содержащий текст, выровненный по левому краю.



94


М. Э. Абрамян. Электронный задачник Programming Taskbook 4.6

 

 

Абзацы текста разделяются одной пустой строкой. Выровнять текст по

ширине (то есть и по левому, и по правому краю), увеличив в каждой

непустой строке (кроме последних строк абзацев) количество пробелов

между словами, начиная с последнего пробела в строке (ширину текста

считать равной 50).


Text38◦. Дано целое число K (> 25) и текстовый файл, содержащий текст,

выровненный по левому краю. Абзацы текста отделяются друг от друга

одной пустой строкой. Отформатировать текст так, чтобы его ширина не

превосходила K позиций, и выровнять текст по левому краю, сохранив

деление на абзацы. Пробелы в конце строк удалить. Сохранить отформа-

тированный текст в новом текстовом файле.

Text39. Дано целое число K (> 25) и текстовый файл, содержащий текст, выров-

ненный по левому краю. Абзацы выделяются в нем с помощью красной

строки (5 начальных пробелов), а пустых строк нет. Отформатировать

текст так, чтобы его ширина не превосходила K позиций, и выровнять

текст по левому краю, сохранив деление на абзацы. Пробелы в конце

строк удалить. Сохранить отформатированный текст в новом текстовом

файле.