Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
23
Добавлен:
25.04.2015
Размер:
165.38 Кб
Скачать

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

Методические рекомендации: Разработать алгоритм и программу для решения задачи по обработке типизированных файлов.

Варианты заданий:

  1. Число компонент файла f, компонентами которого являются целые числа, кратно 10. Переписать компоненты файла f в файл g, изменяя порядок чисел в каждой десятке так, чтобы в начале шли числа, делящиеся на 3, затем числа, дающие при делении на 3 остаток 1, затем числа, дающие при делении на 3 остаток 2. Порядок самих десяток должен быть сохранен.

  2. Исходный текст содержит список целых десятичных чисел. Сгруппировать в выходном файле вначале числа, начинающиеся с цифры 1, затем с цифры 2, 3, 4 и т.д., причем относительная последовательность чисел в каждой группе должна быть такой же, как и в исходном тексте. Если какое-либо из исходных чисел содержит незначащие нули, то такие нули должны быть удалены. Если в исходном списке число 0, то это число должно быть первым в выходном файле.

  3. Даны два файла вещественных чисел с именами NameA и NameB, содержащие элементы квадратных матриц A и B (по строкам). Создать новый файл с именем NameC, содержащий элементы произведения A·B. Если матрицы A и B нельзя перемножать, то оставить файл NameC пустым.

  4. Даны два файла вещественных чисел с именами Name1 и Name2, элементы которых упорядочены по возрастанию. Объединить эти файлы в новый файл с именем Name3, сохранив упорядоченность элементов.

  5. Даны два файла вещественных чисел с именами Name1 и Name2, элементы которых упорядочены по убыванию. Объединить эти файлы в новый файл с именем Name3, сохранив упорядоченность элементов.

  6. Дан файл целых чисел. Удалить в нем все отрицательные и нечетные числа.

  7. Дан файл целых чисел. Продублировать в нем все числа, принадлежащие диапазону 5..10.

  8. Дан файл, содержащий ненулевые целые числа. Заменить в нем все положительные и четные числа двумя нулями.

  9. Дан файл целых чисел с элементами A(i), i = 0, ..., N–1 (N — размер файла). Заменить исходное расположение его элементов на следующее: A(0), A(N–1), A(1), A(N–2), A(2), ... .

  10. Даны три файла целых чисел одинакового размера с именами NameA, NameB и NameC. Создать новый файл с именем NameD, в котором чередовались бы элементы исходных файлов с одним и тем же номером: A0, B0, C0, A1, B1, C1, A2, B2, C2, ... .

1осн.[119-139]

5Доп. [16-19], 10доп.[87-95], 11доп.[359-369]

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

Методические рекомендации: Разработать алгоритм и программу для решения задачи по обработке текстовых файлов.

Варианты заданий:

  1. Даны два файла целых чисел одного размера с именами Name1 и Name2. Создать текстовый файл с именем NameT, содержащий изображения этих чисел, расположенные в два столбца шириной по 30 символов: первый содержит числа из файла Name1, второй — из файла Name2. В начале и конце каждой строки текстового файла ввести разделитель " | " (код 124). Числа выравниваются по левому1|правому2 краю столбца.

  2. Дан текстовый файл с именем NameT, содержащий таблицу из трех столбцов вещественных чисел. Ширина столбцов таблицы и способ их выравнивания являются произвольными. Специальных символов-разделителей таблица не содержит. Создать файлы вещественных чисел с именами Name1, Name2 и Name3, каждый из которых содержит числа из соответствующего столбца таблицы.

  3. Дан текстовый файл, представляющий собой таблицу, состоящую из трех столбцов с целыми числами. В начале и в конце каждой строки таблицы, а также между ее столбцами располагается символ-разделитель. Ширина столбцов таблицы и способ их выравнивания являются произвольными. Создать файл целых чисел, содержащий сумму чисел из каждой строки исходной таблицы.

  4. Дан текстовый файл. Создать символьный файл, содержащий все символы, встретившиеся в тексте, включая пробел и знаки препинания (без повторений). Символы располагать в порядке убывания их кодов.

  5. Дан текстовый файл. Создать символьный файл, содержащий все символы, встретившиеся в тексте, включая пробел и знаки препинания (без повторений). Символы располагать в порядке их первого появления в тексте.

  6. Дан текстовый файл с именем NameT. Подсчитать число повторений в нем строчных русских букв ("а"–"я") и создать строковый файл с именем NameS, элементы которого имеют вид: "<буква>–<число повторений данной буквы>". Буквы, отсутствующие в тексте, в файл не включать. Строки упорядочить по убыванию числа повторений букв, а при равном числе повторений — по возрастанию кодов букв.

  7. Дано целое число N и текстовый файл с именем Name1, содержащий один абзац текста, выровненный по левому краю. Отформатировать текст так, чтобы его ширина не превосходила N позиций, и выровнять текст по правому краю. Пробелы в конце строк удалить. Сохранить отформатированный текст в новом текстовом файле с именем Name2.

  8. Дано целое число N и текстовый файл Name1, содержащий текст, выровненный по левому краю. Абзацы текста отделяются друг от друга одной пустой строкой. Отформатировать текст так, чтобы его ширина не превосходила N позиций, и выровнять текст по левому краю, сохранив деление на абзацы. Пробелы в конце строк удалить. Сохранить отформатированный текст в новом текстовом файле Name2.

  9. Дана строка K, состоящая из 10 цифр, и файл с русским текстом. Зашифровать файл, выполнив циклическую замену каждой русской буквы, стоящей на i-й позиции строки, на букву того же регистра, расположенную в алфавите на K[i]-м месте после шифруемой буквы (символы строки K также перебираются циклически: для i = 11 снова используется смещение K[1] и т.д.). Букву "ё" в алфавите не учитывать, знаки препинания и пробелы не изменять.

  10. Дана строка S1 и файл с русским текстом, зашифрованным по следующему правилу. Каждая русская буква, стоящая на i-й позиции строки, циклически заменена на букву того же регистра, расположенную в алфавите на K[i]-м месте после шифруемой буквы (символы строки K также перебираются циклически: для i = 11 снова используется смещение K[1] и т.д.). Букву "ё" в алфавите не учитывать, знаки препинания и пробелы не изменять. Строка S1 представляет собой первую расшифрованную строку текста. Расшифровать остальные строки и заменить в файле зашифрованный текст на расшифрованный. Если информации для расшифровки недостаточно, то исходный файл не изменять.

1осн.[119-139]

Соседние файлы в папке лекции паскаль