Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Данные типа Запись

Лекция № 18

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

Запись отличается от массива тем, что компоненты записи могут иметь различный тип. На практике часто встречаются данные этого типа (обычно их называют структурами). Например, простейшей структурой представленной на рис.4.18.1 являются данные комплексного типа.

 

Рис.4.18.1

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

Элементами структур могут быть структуры, то есть структуры являются иерархическими. Пример иерархической структуры приведен на рис.4.18.2.

 

Рис.4.18.2.

Здесь Stud и FIO структуры; NR (номер зачетной книжки) – поле целого типа; FAM, IM, OT (фамилия, имя, отчество) поля строкового типа; BALL (средний балл) – поле вещественного типа. Часто структуру входящую в другую структуру называют подструктурой.

Общая форма объявления данных типа запись имеет вид

Type TZ = RECORD

pd11, pd12,....pd1k: type1;

pd21, pd22,... pd2k: type2;

...........

pdn1, pdn2,... pdnk: typen

End;

Здесь TZ - идентификатор типа,

Record - ключевое слово,

pd11, pd12,...-идентификаторы полей,

type1, type2,... typen - типы полей.

Пример объявления записи.

 

Type Cmp=Record

Re, IM: Extended;

End;

 

Var X, Y, Z: Cmp;

 

Здесь сначала в разделе Type объявляется идентификатор типа (Cmp), а затем он используется в разделе Var при объявлении переменных (X,Y,Z) как данных типа запись. Как и в случае массивов к данным типа запись можно применять операцию присваивания:

X: = Y;

причем слева и справа от операции присваивания должны быть переменные типа запись одного типа.

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

Var X, Y, Z: Record

Re, Im: Extended;

End;

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

При объявлении типа терархической структуры разделителем между тдентификаторами типа и ключевыми словами Record является символ "двоеточие".

Пример объявления идентификатора типа для иерархической записи.

Type

Strok = String [ 15 ];

Stud = Record

Nr: Integer;

Fio: record

Fam, Im, Ot: Strok

End; { конец Fio}

Adr: Record

Gor, Yl: Strok;

Dm, KB: Integer

End; { конец Adr}

End; {конец Stud}

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

Теперь если мы желаем обрабатывать одну запись о студенте, то в разделе переменных надо объявит переменную типа запись, например так

Var Anketa: Stud;

Если же надо обрабатывать данные о группе студентов, то можно объявить массив записей, например так

Var Spisok: Array [1..30 ] Of Stud;.

Обращение.

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

Dt. Day: =

Anketa. Fio. Fam: = ‘ Иванов‘;

Если уровней иерархии много, то составное имя получается длинным.

 

<== предыдущая лекция | следующая лекция ==>
Реєстрація та технічне опосвідчення посудин | Указатели и динамическая память
Поделиться с друзьями:


Дата добавления: 2014-01-04; Просмотров: 537; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.