Организация ввода-вывода

Составной оператор

Структурированные операторы

Пустой оператор

Оператор присваивания

Простые операторы

Операторы языка

Лекция №3

Операторы языка описывают некоторые алгоритмические действия, которые необходимо выполнить для решения задачи. Тело программы можно представить как последовательность операторов, отделённых друг от друга точкой с запятой.

Операторы языка Турбо Паскаль можно разбить на две группы: простые и структурированные.

Простыми называются те операторы, которые не содержат других операторов. К ним относятся:

- оператор присваивания;

- обращение к процедуре;

- пустой оператор.

С помощью этого оператора переменной или функции присваивается значение выражения. Для этого используется знак присваивания := .

< идентификатор >:=< выражение >

Тип выражения и тип переменной (или функции) должны быть совместимы для присваивания.

Пример.

x:=y;

z:=sqr(sin(x+5))-15.8*exp(ln(y)/7);

c:=(m<=6) or (m>1);

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

К структурированным операторам можно отнести:

- составной оператор;

- условный оператор IF;

- условный оператор CASE;

- оператор цикла REPEAT;

- оператор цикла WHILE;

- оператор цикла FOR;

- оператор над записями WITH.

Составной оператор представляет собой совокупность последовательно выполняемых операторов, заключенных в операторные скобки BEGIN и END. Такой оператор может потребоваться в тех случаях, когда в соответствии с правилами построения конструкций языка допустимо использовать лишь один оператор, а необходимо выполнить несколько действий. Таким единственным оператором может выступать составной оператор, в который входит ряд операторов, выполняющих требуемые действия.

Можно считать, что и само тело программы тоже является составным оператором.

 

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

Перед тем, как осуществлять ввод-вывод, файловая переменная должна быть связана с конкретным внешним файлом с помощью процедуры ASSIGN. Этим файлом может быть файл на магнитном диске, а также устройство вычислительного комплекса (клавиатура, экран дисплея, принтер, и т.д.). Затем файл должен быть открыт для чтения или/и записи. После этого можно осуществлять организацию ввода-вывода.

В Турбо Паскале имеется три категории файлов: текстовые (тип TEXT), типизированные (FILE OF< тип >) и файлы без типа (FILE). Работа с этими категориями файлов несколько отличается друг от друга.

Имеется две стандартные файловые переменные типа TEXT: INPUT и OUTPUT. Переменная INPUT стандартно связана с клавитурой, а OUTPUT – с экраном дисплея. При запуске программ эти файлы автоматически открываются.

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

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

6.1. Стандартные процедуры и функции для всех категорий файлов.

Процедуры:

ASSIGN связать файловую переменную с внешним файлом
CHDIR изменить текущий каталог
CLOSE закрыть открытый файл
ERASE уничтожить внешний файл
GETDIR вернуться в текущий каталог активного дисковода
MKDIR создать подкаталог
RENAME переименовать внешний файл
RESET открыть существующий файл для чтения
REWRITE создать и открыть новый файл для записи

Функции

EOF Фиксация конца файла
IORESULT Возвращает целое число, характеризующее результат последней операции ввода-вывода

Определение некоторых процедур:

ASSIGN (FileVar: <файловый тип>, FileName);

FileVar – переменная файлового типа; FileName – строка, содержащая имя внешнего файла.

CLOSE (FileVar: <файловый тип>);

FileVar – переменная файлового типа.

RESET (FileVar: <файловый тип>);

FileVar – переменная файлового типа.

REWRITE (FileVar: <файловый тип>);

FileVar – переменная файлового типа.

Если внешний файл, с которым связана файловая переменная уже существует и в нём содержится некоторая информация, то по процедуре REWRITE содержимое файла будет стерто.