Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Teoria 158783 .doc
Скачиваний:
6
Добавлен:
25.09.2019
Размер:
1.72 Mб
Скачать

Ввод / вывод значения множественной переменной

Для ввода значения множественной переменной используется операция объединения множеств.

Пример 4.8.

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

Var

B: Char;

Mn: Set Of ‘A’..‘Z’; {Тип элементов вводимого множества}

Begin

Mn := []; {Начальное значение множества – пустое множество}

Repeat

Read (B); {Чтение очередного элемента множества}

Mn := Mn + [B] {Объединение множеств}

Until B = ’.’; {‘.’ – признак конца текста}

...

Во входном файле необходимо подряд записать все значения, составляющие значение данной множественной переменной.

Если очередное значение переменной B не относится к базовому типу множества, то оно в множество Mn не занесется.

Для вывода значения множественной переменной используется операция проверки вхождения элемента в множество.

Пример 4.9.

Продолжение примера 4.8. Вывод значения переменной типа множества латинских букв.

For B := ’A’ To ‘Z’ Do {Организация цикла по базовому типу множества}

If B In Mn Then {Анализ вхождения очередного значения базового

типа в значение множественной переменной}

Write (B: 5);

Типизованные константы-множества

Типизованная константа-множество представляет собой, с точки зрения синтаксиса, конструктор множества, то есть значение множественной величины.

Синтаксис константы-множества определяет Рисунок 4 .34.

Синтаксическая диаграмма <Константы_элемент> (см. Рисунок 4 .34) имеет вид, который иллюстрирует Рисунок 4 .35.

Таким образом, <Константа_элемент> представляет собой значения или диапазоны значений базового типа множества.

Константа-множество может использоваться как инициированная переменная типа множество.

Рисунок 4.34 – Синтаксическая диаграмма константы-множества

Рисунок 4.35 – Синтаксическая диаграмма константы-элемента

Пример 4.10.

Объявление типизованной константы-множества.

Const

Dig: Set Of 0..9 = [1, 3, 5];

Dig1: Set Of 0..9 = [];

Ch: Set Of ‘A’..‘Z’ = [‘A’..‘E’, ‘I’, ‘P’, ‘T’];

Раздел 5.Файлы Общие сведения

Для всех рассмотренных ранее производных типов было характерно наличие заранее заданного числа компонент.

Файловый тип – это произвольная последовательность элементов, длина которой заранее не определена, а конкретизируется в процессе выполнения программы.

Это определение логического файла, т.е. того, который используется в программе (файл с точки зрения программиста).

Физический файл (набор данных) – это поименованная область памяти на внешнем носителе, в которой хранится некоторая информация (файл с точки зрения пользователя).

Элементы файла записаны в нем последовательно (Рисунок 5 .36).

Рисунок 5.36 – Структура файла

В Паскале возможны два способа обращения к элементам файла: последовательный доступ и прямой доступ.

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

При прямом доступе можно обратиться непосредственно к элементу файла с номером n, минуя предварительный просмотр n - 1 элемента файла.

Файловый тип - это единственный тип значений, посредством которого данные, обрабатываемые программой, могут быть получены извне, а результаты могут быть переданы человеку. Это единственный тип значений, который связывает программу с периферийными устройствами компьютера.

В Паскале имеется три типа файлов (три вида переменных файлового типа, т.е. файловых переменных):

  • текстовые файлы;

  • файлы с типом;

  • файлы без типа.

Синтаксис задания файлового типа имеет вид, который представляет Рисунок 5 .37.

Рисунок 5.37 – Синтаксическая диаграмма задания фалового типа

Над значениями файлового типа не определены никакие операции (даже присваивание файловой переменной значения другой файловой переменной).

Все операции могут производиться лишь с элементами файлов. Множество операций над элементами файла определяется типом элементов.

Для доступа к отдельным элементам файлов в Паскале существуют специальные стандартные процедуры и функции. Их называют процедурами и функциями ввода-вывода. Обращение к ним осуществляется обычным образом.

Для удобства описания действия этих процедур используется понятие «окно файла» («окно», текущая позиция файла, указатель файла). Окно определяет позицию доступа, т.е. тот элемент файла, который доступен для чтения или для записи.

Позиция файла, следующая за последним элементом файла (или первая позиция пустого файла) помечается специальным маркером конца файла (Ctrl - Z при создании текстового файла с клавиатуры). С помощью этого маркера определяется конец файла.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]