Процедуры и функции для работы с файлами
Ниже приведены некоторые процедуры и функции модуля System, которые применимы для работы с файлами.
Процедураclose (<файловая переменная>) закрывает файл, сохраняя установленную ранее процедурой assign связь файловой переменной с именем файла.
Функции процедуры close выполняются автоматически по отношению ко всем открытым файлам при нормальном завершении программы. Так как связь файла с файловой переменной сохраняется, то файл можно повторно открыть без дополнительного использования процедуры assign.
Процедураrename (<ф.п.>, <новое имя>) переименовывает файл. Перед выполнением процедуры rename необходимо закрыть файл, который был открыт процедурами reset, rewrite или append.
Процедураerase (<файловая переменная>) уничтожает (стирает) файл, заданный как <файловая переменная>. Перед выполнением процедуры rename необходимо закрыть файл, который был открыт процедурами reset, rewrite или append.
ПроцедураBlockRead (var F: file; var buf; count: word [; var result: word]) считывает в переменную buf count записей из файла F. Необязательный параметр result содержит истинное количество считанных записей.
ПроцедураBlockWrite (var F: file; var buf; count: word [; var result: word]) передаёт count записей из переменной buf в файл F. Необязательный параметр result содержит истинное количество считанных записей.
Порядок выполнения работы
1. Разработайте алгоритм решения задачи в соответствии со своим вариантом.
2. Откройте текстовый редактор Turbo Pascal.
3. Напишите программу решения задачи по разработанному ранее алгоритму. В программе предусмотреть вывод справочной информации (информация об авторе, наименование и назначение программы), возможность многократных вычислений.
4. Отладьте программу.
5. Сохраните результаты работы программы.
Содержание отчета
Отчет оформляется индивидуально и содержит:
- титульный лист;
- наименование, цель и содержание работы;
- алгоритм и текст программы
- изображения экранов монитора с результатами работы программы;
- выводы по результатам работы.
Варианты заданий
Разработайте алгоритм и программу, выполняющую действия над данными и файлами в соответствии с заданным вариантом. В программе предусмотреть вывод справочной информации (назначение программы, вид выполняемого действия, автор), возможность повторного выполнения программы.
1. Создать файл X компонентами которого являются элемента массива M. Переписать из файла X в файл Y все компоненты, которые стоят на четных местах. Прочитать файл Y.
2. Дан файл, в котором через пробел записаны натуральные числа. Вывести на экран суммы цифр каждого числа.
3. Дан файл с учебным расписанием. Написать программу, которая определяет количество лекционных, практических и лабораторных занятий. Вывести их количество на экран.
4. Дана текстовая строка, состоящая из заглавных латинских букв. Требуется найти подстроку из трёх букв, которая встречается в данной строке чаще всего. Например, в строке DEFDEFABCABCZABCDEFDEF чаще всего (4 раза) встречается подстрока DEF. Входной файл содержит текстовую строку. Выходной файл должен содержать единственное число — количество вхождений самой часто встречающейся подстроки из трёх букв. Длина исходной строки от 3 до 1000000 символов.
5. Посчитать сколько содержится в файле символов, строк и слов. Разделителями слов считать пробелы и перенос строки.
6. Прочитать данные из текстового файла и записать их в нетипизированный файл.
7. Найти в строке все заданные последовательности символов и заменить их другой последовательностью.
8. Преобразовать текст в морзянку (текст из одного файла, морзянка – в другой файл)
9. Вывод и сохранение в текстовый файл всех слов текстовой строки номера, которых являются нечетными.
10. Определение является ли слово перевёртышем, например «казак». Статистические данные работы программы (количество введенных слов, абсолютное и относительное значение слов перевёртышей) сохранить в текстовый файл.
11. Нахождение максимального и минимального элемента матрицы. Исходная матрица читается из файла, результаты вычислений сохраняются в этот же файл.
12. Подсчитать статистику в файле и записать результат в другой файл. (статистика – сколько каждого символа присутствует в файле, например АБВАБ –> 2 А, 2 Б, 1 В)
13. Нахождение максимального и минимального элемента произвольной строки матрицы. Исходная матрица читается из файла, результаты вычислений сохраняются в этот же файл.
14. Дан файл, содержащий n чисел (a0, a1, a2, … , an). Сформировать файл, в котором будут находиться эти же числа, а между ними будет вставлено m чисел, по линейной зависимости. Например, если в исходном файле числа 1 4 13 и надо вставить 2 числа, то должен получиться файл, содержащий 1 2 3 4 7 10 13.
15. Нахождение максимального и минимального элемента произвольного столбца матрицы. Исходная матрица читается из файла, результаты вычислений сохраняются в этот же файл.
16. Вывести на экран текстовый файл, отцентровав его содержимое. Если строка не влезает – разбить её на несколько (как это делает Word)
17. Вывести на экран текстовый файл, заменив все выражения <li> на порядковый номер. Например если исходный файл содержит “<li> привет <li> мир <li>”, то в результате должно получиться “1 привет 2 мир 3”
18. Нахождение максимального и минимального элемента матрицы находящегося на главной диагонали матрица. Размерность матрицы 6х6. Матрица задается пользователем, результаты вычислений, в том числе и исходная матрица сохраняются в файл.
19. Вывести на экран текстовый файл, выравнивая по левой и правой границе (аля выравнивание по ширине Word). Если строка не влезает – разбить её на несколько (как это делает Word). Каждый абзац имеет отступ первой строки n пробелов.
20. Сформировать html файл по текстовому, добавив в начало теги <html> <body>, в конец тег </body> и каждое предложение обрамить в теги <p> и </p> соответственно. Различные разукрашивания (случайные цвета, например) средствами html приветствуются.
21. Поэлементное умножение двух произвольных срок матрицы с записью результатов умножения в строку указанную пользователем. Матрица задается пользователем, результаты вычислений, в том числе и исходная матрица сохраняются в файл.
22. Поэлементное умножение двух произвольных столбцов матрицы с записью результатов умножения в столбец указанный пользователем. Матрица задается пользователем, результаты вычислений, в том числе и исходная матрица сохраняются в файл.
23. Сформировать html файл по текстовому, добавив в начало теги <html> <body> <table>, в конец тег </table> </body> и каждое предложение обрамить в теги <tr> <td> и <td> </tr> соответственно. Различные разукрашивания (случайные цвета, например), средствами html приветствуются.
24. Вычисление суммы, произведения и среднего арифметического всех элементов матрицы. Исходная матрица читается из файла, результаты вычислений сохраняются в этот же файл.
25. Сформировать pas файл по текствовому файлу, который командами writeln выводит на экран содержимое этого текстового файла.
26. Найти и поменять местами максимальный и минимальный элементы матрицы. Исходная матрица читается из файла, результаты вычислений сохраняются в этот же файл.
27. Найти и поменять местами максимальный и минимальный элементы произвольной строки матрицы. Исходная матрица читается из файла, результаты вычислений сохраняются в этот же файл.
28. Найти и поменять местами максимальный и минимальный элементы произвольного столбца матрицы. Исходная матрица читается из файла, результаты вычислений сохраняются в этот же файл.
29. Замена слов в тексте файла (*.txt). Номера меняемых местами слов определяет пользователь в процессе работы программы. Результаты работы программы записать в текстовый файл.
30. Замена первого и последнего слов в предложениях местами. Исходный текст читается из файла, результаты дописываются в этот же файл.
6 Контрольные вопросы
1. Поясните, что такое файл.
2. Поясните, что такое файловая переменная.
3. С какими типами файлов позволяет работать среда Turbo Pascal.
4. Укажите процедуру выполняющую связь файловой переменной с файлом.
5. Укажите процедуру инициализации файла для записи.
6. Укажите процедуру инициализации файла для чтения.
7. Укажите процедуру инициализации файла для изменений (расширения).
8. Укажите назначение процедуры close.
9. Укажите назначение процедуры rename.
10. Укажите назначение процедуры erase.
11. Укажите назначение процедуры blockread.
12. Укажите назначение процедуры blockwrite.
Рекомендуемая литература
1. Степанов А.Н. Информатика. Базовый курс. Учебник для ВУЗов. - Издательство "Питер", 2007. – 768с.
2. Острейковский, В.А. Информатика : учебник для вузов / В.А.Острейковский .— 3-е изд.,стер. — М. : Высш.шк., 2005 .— 511с. : ил. — Библиогр.в конце кн. — ISBN 5-06-003533-6 /в пер./ : 128.74.
ЛАБОРАТОРНАЯ РАБОТА 17
Не нашли, что искали? Воспользуйтесь поиском по сайту:
©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.
|