Тема: «Файлы произвольного доступа».

Варианты индивидуальных заданий:

При выполнении заданий все преобразования производить только над исходным файлом без использования промежуточных файлов. Предусмотреть вывод содержимого файла до и после преобразования.

Вариант 1.

Составить программу, определяющую правильность следования скобок в строке символов, используя для этой цели стек на основе файла.

Вариант 2.

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

Вариант 3.

Используя файл задания 2, определить, какие предметы обеспечивает данная кафедра.

Вариант 4.

Используя файл, задания 2,определить название предмета, который читает данный лектор, а также номер группы и номер семестра.

Вариант 5.

Используя файл задания 2, определить, в каких группах и в каких семестрах преподавался определенный предмет.

Вариант 6.

Используя файл задания 2, определить, какие предметы читались в заданном семестре в одной из групп.

Вариант 7.

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

Вариант 8.

Отсортировать файл, созданный в задании 7, по алфавиту методом пузырька, не используя дополнительных файлов.

Вариант 9.

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

Вариант 10.

Для программы, записанной в файле в виде непрерывного текста, преобразовать файл таким образом, чтобы каждый оператор, располагался на отдельной строке.

Вариант 11.

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

Вариант 12.

Перемножить два сверхдлинных целых числа, записанных в файле. Результат записать в тот же файл.

Вариант 13.

Произвести сортировку файла целых чисел методом пузырька.

Вариант 14.

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

Вариант 15.

Во внешнем файле создать очередь произвольной длины. Удалять или дополнять ее произвольным количеством элементов.

Вариант 16.

Во внешнем файле создать очередь длиною n элементов. При поступлении очередного элемента первый элемент удаляется.

Вариант 17.

Файл целых чисел циклически сдвинуть влево или вправо на K элементов в зависимости от знака числа К.

Вариант 18.

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

Вариант 19.

Пусть некоторый файл содержит числа Фибоначчи U0,U1,..,Un Получить и дополнить этот файл очередным компонентом Un+1.

Вариант 20.

Дан символьный файл. Записать в этот же файл компоненты файла в обратном порядке.

Вариант 21.

В файле целых чисел исключить повторное вхождение одних и тех же чисел.

Вариант 22.

Удалить из символьного файла все однобуквенные слова, не используя дополнительные файлы.

Вариант 23.

Дан файл целых чисел. Преобразовать его таким образом, чтобы вначале шли все отрицательные числа, а затем — неотрицательные.

Вариант 24.

Заданный файл целых чисел отсортировать методом максимального элемента, не используя дополнительный файл.

Вариант 25.

В некотором файле содержится таблица футбольного чемпионата, в котором участвовало n команд. Перестроить эту таблицу таким образом, чтобы команды располагались в соответствии с занятыми ими местами.