Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ШПОРЫ ПО ИНФЕ.docx
Скачиваний:
4
Добавлен:
01.03.2025
Размер:
220 Кб
Скачать
☆
    1. Вещественные типы.

В отличие от порядковых типов, значения которых сопоставляются с рядом целых чисел и, следовательно, представляются в ПК абсолютно точно, значения вещественных типов определяют произвольное число лишь с некоторой конечной точностью, зависящей от внутреннего формата вещественного числа (табл. 5).

Таблица 5. Формат вещественных типов.

Как видим, Турбо Паскаль характеризуется богатой гаммой вещественных типов, однако доступ к типам SINGLE, DOUBLE и EXTENDED возможен только при особых режимах компиляции.

Итак, я думаю, что изложил достаточно информации по данному вопросу и можно перейти к рассмотрению следующего.

30.Записи .Описание типа

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

Описание записи в языке Паскаль осуществляется с помощью служебного слова record, вслед за которым описываются компоненты записи. Завершается описание записи служебным словом end.

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

type TRec = Record

FIO: String[20];

TEL: String[7]

end;

var rec: TRec;

Описание записей возможно и без использования имени типа, например:

var rec: Record

FIO: String[20];

TEL: String[7]

end;

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

Чтобы обратиться к отдельной компоненте записи, необходимо задать имя записи и через точку указать имя нужного поля, например:

rec.FIO, rec.TEL

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

Обращение к компонентам записей можно упростить, если воспользоваться оператором присоединения with.

Он позволяет заменить составные имена, характеризующие каждое поле, просто на имена полей, а имя записи определить в операторе присоединения:

with rec do оператор;

Здесь rec - имя записи, оператор - оператор, простой или составной. Оператор представляет собой область действия оператора присоединения, в пределах которой можно не использовать составные имена. Например для нашего случая:

with rec do begin

FIO:='Иванов А.А.';

TEL:='2223322';

end;

Такая алгоритмическая конструкция полностью идентична следующей:

rec.FIO:='Иванов А.А.';

rec.TEL:='2223322';

31.Файлы.Описание типа

Одной из наиболее фундаментальных структур данных, используемых в Tuibo Pascal, являются файлы. Любой файл имеет три характерные особенности. Во-первых, у него есть имя, что даст возможность программе работать одновременно с несколькими файлами. Во-вторых, он содержит компоненты одного тиля. Таким компонентом может быть любой тип Turbo Pascal, кроме файлового. Например, допускается файл записей или файл строк, но нельзя создать «файл файлов». В-третьих, длина создаваемого файла никак не оговаривается при его объявлении и ограничивается только емкостью устройств внешней памяти.

В большинстве случаев файлы состоят из текстовых строк, или записей. Для описания файла используется словосочетание file of.

Для доступа к файлу описывается специальная файловая переменная, которая считается представителем в Pascal-программе (чаще всего ее обозначают как F). Если файл состоит из записей, дополнительно описи переменная для доступа к полям записи (обозначим ее R).

Формат:

Type <имя типа> = <тип компонентов»;

Var

: file of <имя типа>;

: <имя типа>;

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

В любой момент времени программе доступен только один элемент файла, на который ссылается текущий указатель (указатель обработки). Часто позицию размещения доступного элемента называют текущей позицией.

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

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