Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ответы на экзамен по информатике.docx
Скачиваний:
5
Добавлен:
27.04.2019
Размер:
106.96 Кб
Скачать

Вопрос 17 Записи. Синтаксис описания записей.

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

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

В то же время, если компоненты массива должны быть одного типа, записи могут содержать компоненты разных типов.

Каждая компонента записи называется полем.

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

Оператор, который присваивает полю LastName значение Alex, выглядит так:

User.LastName:=‘Alex’;

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

Type   EntryType = (Book, Magazine);

Теперь можно привести скорректированное описание Entry

Type   Entry = Record       Autor, Title : String;       Year : 1..2010;       Case EntryType of         Book : (Publisher, City : String);         Magazine : (MagName : String,         Volume, Issue : Integer)     End;

Это описание делится на две части: фиксированную и вариантную. Поля Autor, Title, Year составляют фиксированную часть. Оставшаяся часть описания Entry образует вариантную часть, структура которой, может меняться в пределах двух альтернативных определений.

Описание записей в Паскале

     При использовании записей они д.б. описаны с использованием раздела описания либо непосредственно в разделе описания переменных

Запись имеет следующую структуру:

IZ = RECORD                         Где:  IZ – имя типа записи;             IK1 : T1;                                IK – имя поля (компоненты);             IK2 : T2;                                T   - тип компоненты, м.б. любой стан-              . . .                                                дартный либо предварительно             IKN :TN;                                       определенный (кроме файлового);         END;                                            RECORD – запись;                                                              RECORD-END – операторные скобки.

Вопрос 18 Сравнение массивов и записей. Работа с полями записей.

Записи отличаются от массива тем что массив может содержать элементы только одного типа. А в записи каждое поле может задаваться разными типами данных.

Var

User : Record     FirstName : String[20];     LastName : String[20];     Sex : (‘m’,’f’);

BirthDay : Date;

End;

Каждая компонента записи называется полем.

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

Оператор, который присваивает полю LastName значение Alex, выглядит так:

User.LastName:=‘Alex’;

Type  Date = Record     Day : 1..31;     Month : String[20];     Year : integer;

End;

User = Record     FirstName : String[20];     LastName : String[20];     Sex : (‘m’,’f’);

BirthDay : Date;

End;

Var

Student : User;

Begin

Student.FirsName:=‘Ivanov’;

Student.LastName:=‘Ivan’;

Student.Sex:=‘m’;

Student.BirthDay.Day:=13;

Student.BirthDay.Month:=‘January’;

Student.BirthDay.Year:=1992;