logo
lab_rab5_6

1.1.7 Основные функции ввода/вывода

Вывод на экран производится при помощи встроенных процедур Write(переменная1, переменная2, …, переменнаяN) – печать,

WriteLn(переменная1, переменная2, …, переменнаяN) – печать с новой строки.

Ввод с экрана (чтение) реализуется аналогично: Read(переменные) или ReadLn(переменные).

Например, необходимо считать с экрана монитора значение переменной n. Для удобства обычно сначала выводят строку:

Write('n = ');

а затем считываю значение:

Read(n);

Форматный вывод

Для вывода чисел предусмотрен форматный вывод.

Для всех типов целых чисел выводится длина (количество знаков в числе), например, Write(n:5); – будет выделять для вывода числа 5 знаков, т.е. если числа двузначные, то между ними будет интервал в 3 пробела.

Для вывода действительных чисел используется «двойной» формат, который включает общее количество разрядов и количество знаков после запятой. Например, Write(а:10:3); – будет выводить число с 3 знаками после запятой. Общее количество разрядов – 10. Из них 3 – после запятой, 1 выделяется для самой запятой и 1 выделяется для знака числа (+ или –), причем + по умолчанию не печатается. Это означает, что данный формат вывода предусматривает 5 знаков перед запятой, и возможно превышение формата.

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

Работа с файлами (ввод/вывод)

Сначала необходимо описать переменную файла, например: Var f: file;

Затем необходимо связать физический файл с файловой переменной. Для этого используется процедура Assign, например: Assign(f, ‘NameFile1.dat’) – работа с файлом NameFile1.dat из текущей директории. Также можно записывать полное имя файла (с указанием полного пути).

Открытие файлов выполняется процедурами Reset и Rewrite.

Процедура Reset(f) открывает существующий физический файл.

Процедура Rewrite(f) создает новый физический файл. Если файл с таким именем уже существует, то он удаляется, и на его месте записывается новый пустой файл.

Закрытие файлов выполняется процедурой Close: Close(f).

При открытии указатель текущей позиции устанавливается в начало файла.

Таблица 1.6 Функции, используемые при работе с файлами

Функция

Описание

Тип аргумента

Тип функции

EOF (F)

TRUE, конец файла

FALSE, нет конца

file

boolean

EOLN (F)

TRUE, конец строки

FALSE, нет конца

File

boolean

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

Program SummaElemFile;

Uses Crt;

Var x, Sum: real;

f: text;

Begin

ClrScr;

Assign(f, ‘NameFile1.dat’);

Reset(f);

Sum:=0;

While not Eof(f) do

begin

Read(f, x);

Sum:=Sum+x;

end;

Close(f);

WriteLn(‘Summa of file’s elements =’, Sum);

Readkey;

End.