Работа с текстовыми файлами

 

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

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

 

program num_positive_2;

const n = 10;

var

f_in, f_out : text; { 1 }

a : array [1 .. n] of integer;

i, imax, imin, ibeg, iend, count : integer;

begin

assign(f_in, 'E:\input.txt'); { 2 }

reset(f_in); { 3 }

assign(f_out, 'E:\output.txt'); { 4 }

rewrite(f_out); { 5 }

for i :=1 to n do read(f_in, a[i]); { 6 }

imax := 1; imin := 1;

for i:=1 to n do begin

if a[i] > a[imax] then imax := i;

if a[i] < a[imin] then imin := i;

end;

if imax < imin then ibeg := imax else ibeg := imin;

if imax < imin then iend := imin else iend := imax;

count := 0;

for i := ibeg + 1 to iend - 1 do

if a[i] > 0 then inc(count);

writeln(f_out, ' Количество положительных:', count); { 7 }

close(f_out); { 8 }

end.

 

Для того чтобы использовать в программе файлы, необходимо сделать следующее:

1. Объявить файловую переменную (оператор 1).

2. Связать ее с файлом на диске (операторы 2 и 4).

3. Открыть файл для чтения (оператор 3) или записи (оператор 5).

4. Выполнить операции ввода-вывода (операторы 6 и 7).

5. Закрыть файл (оператор 8).

В этой программе объявляются две переменные f_in и f_out стандартного типа «текстовый файл». Процедура assign связывает эти переменные с файлами на диске, путь к которым задается с помощью строк символов. Если полный путь не указан, предполагается, что файл находится в текущем каталоге. Процедура reset открывает файл для чтения, a rewrite — для записи. Если файл, который требуется открыть для записи, существует, он стирается и создается заново.

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

При вводе из файла и выводе в файл используются процедуры read, readln, write и writeln, первым аргументом в которые передается файловая переменная. Файл, в который выполняется запись, после окончания работы нужно обязательно закрывать с помощью процедуры close, иначе информация может быть потеряна.









Дата добавления: 2015-08-08; просмотров: 469;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.003 сек.