Программирование. Pascal ABC. Файлы


Чтобы посмотреть презентацию с оформлением и слайдами, скачайте ее файл и откройте в PowerPoint на своем компьютере.
Текстовое содержимое слайдов:

Работа с файламиТекстовые файлы Введение Все программы так или иначе сохраняют результаты своей работы во внешней памяти (на дисках). Так же программы считывают с внешней памяти входные данные (это может быть файл инициализации или файл, с которым будет проводиться дальнейшая работа). Рассмотрим на примере текстовых файлов работу с внешней памятью (файлами) в Pascal. Объявление В Pascal программа не работает непосредственно с файлами. Все действия производятся с так называемой файловой переменой, которую так же надо объявить. Обычно имя файловой переменной: f, а так как мы будем работать с текстовыми файлами, то тип этой переменной: text. Таким образом, для работы с файлами в разделе описания переменных нужно записать:var f:text; Связь с файлом Перед началом работы файловую переменную нужно связать с конкретным файлом во внешней памяти (либо уже существующим или создающимся). Эта связь создается с помощью процедуры assign: assign(файловая переменная, имя файла);Например:assign(f, 'd:/Ученики/9 класс/9 а/a.txt'); Открытие файла Перед чтением или записью информации в файл, его нужно открыть. reset(f); - процедура открытия файла для чтения (f – файловая переменная). rewrite(f); - процедура открытия файла для записи (перезаписи). Чтение из файла Если файл был открыт для чтения, то прочитать из него информацию можно процедурой read или readln. Обычно процедурой read пользуются для чтения чисел (разделенных пробелом), а readln – для чтения текстовых строк. Первым параметром в этих процедурах должна стоять файловая переменная: Read(f,a); – чтение числа из файла.(число присваивается заранее объявленной переменной а) Readln(f,s); - чтение строки из файла.(строка присваивается заранее объявленной переменной s) Запись в файл Если файл был открыт для записи, то сохранить в нем информацию можно процедурой writeln. Первым параметром в этих процедурах должна стоять файловая переменная: writeln(f,k); - запись в файл значения числовой переменной k. writeln(f,s); - запись в файл значения строковой переменной s. writeln(f,'Hello, world'); - запись в файл строки 'Hello, world'. Закрытие файла Последней операцией работы с файлом, должно быть его закрытие. Оно противоположно открытию файла и сохраняет все изменения, произошедшие с файлом. Для закрытия файла служит процедура close, параметром процедуры является файловая переменная: close(f); Функция для работы с файлом При работе с файлом мы рассмотрим одну, но очень полезную функцию. Она используется при чтении файла, количество информации в котором заранее неизвестно. Эта функция определяет признак конца файла и имеет булевский тип (значения: false или true). Функция eof при достижении конца файла выдает true (истина), в противном случае – false (ложь). EOF – аббревиатура от end of file. Единственным параметром функции является файловая переменная: eof(f) Пример программыСоздадим файл на диске и запишем в него свое имя:program z;var f:text; // объявили файловую переменную s:string;begin write('Введите свое имя: '); readln(s); // вводим в переменную s свое имя assign(f,'d:/name.txt'); // связываемся с файлом name.txt rewrite(f); // создаем файл writeln(f,s); // записываем в него значение переменной s close(f); // закрываем файлend. Пример программыЧтение из файла строк и вывод из на экран:program z;var f:text; s:string;begin assign(f,'d:/text.txt'); // связались с файлом reset(f); // открыли файл while not(eof(f)) do begin //пока не достигли конца файла readln(f,s); // читаем строку из файла writeln(s); // выводим строку на экран end; close(f); // закрываем файлend. Пример программыЗапись в файл десяти случайных чисел из диапазона [-20; 30]:program z;var f:text; i:integer;begin assign(f,'d:/random.dat'); rewrite(f); for i:=1 to 10 do write(f,random(51)-20,' '); // числа будут записаны через пробел close(f); end. Пример программыЧтение из одного файла чисел и запись в другой файл только четных чисел:program z;var f1,f2:text; k:integer;begin assign(f1,'d:/data/namber.txt'); assign(f2,'d:/data/even.txt'); reset(f1); rewrite(f2); while not(eof(f1)) do begin read(f1,k); // числа из файла считываем через пробел if k mod 2 = 0 then writeln(f2,k); // числа будут записаны в каждую строку end; close(f1); close(f2);end. Задания для самостоятельной работы В текстовом файле good.txt* подсчитайте количество сочетаний «про» и вывести это число на экран. Создайте файл three.dat**, числа в котором из промежутка от 1 до 1500 должны быть кратны трем. Из файла z.int перепишите в файл plus.dat только положительные числа. Дан файл aforizm.txt. Перепишите его в файл afera.txt, заменив все буквы «е» на «и».* Все файлы находятся на диске D в папке df** Файлы создавать в той же папке: 'd:/df/…'

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

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

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

Приложенные файлы

  • pptx 18Faily
    Размер файла: 58 kB Загрузок: 5
  • txt aforizm
    Размер файла: 377 kB Загрузок: 5
  • txt good
    Размер файла: 263 kB Загрузок: 6
  • zip z
    Размер файла: 278 B Загрузок: 6