69744

Ієрархічні записи

Домашняя работа

Информатика, кибернетика и программирование

Досі ми розглядали записи, у яких значення окремих полів були величинами простих типів або рядками. Проте в мові Паскаль значення поля може бути довільного типу, в тому числі записом. Наведемо приклад такого використання записів.

Украинкский

2014-10-09

36.5 KB

1 чел.

Самостійне вивчення

Тема 6: Ієрархічні записи

Досі ми розглядали записи, у яких значення окремих полів були величинами простих типів або рядками. Проте в мові Паскаль значення поля може бути довільного типу, в тому числі записом. Наведемо приклад такого використання записів. Нехай треба зберігати анкетні дані за конкретною схемою (рис. 1):

Анкета

Номер

за пор.

Прізвище

Ім’я

По батькові

Дата народження

Стать

Рік

Місяць

День

Рис. 1. Ієрархічна структура даних.

Опис відповідного типу буде такий:

type

Anketa=record

Nomer: integer;

РІВ: record

Pr, Im, Bat: string[15];

end;

Data: record

Rik: 1900..2100;

Mis: string [8];

Den: 1..31;

end;

stat: string [3]

end;

Опишемо змінну

var Dani: Anketa;

Змінна Dani містить відповідно записи РІВ і Data. Це ієрархічна структура запису, у якій одні записи підлягають іншим. Звертання до таких підлеглих типів містять імена відповідних записів, розділених крапкою, та ім'я поля.

Наприклад, занесення в поле Mis має вигляд

Dani. Data. Міs:='лютий' а у поле Рr - прізвища: Dani.РІbr:='Юрків'

Використовуючи оператор приєднання, можна спростити звертання до полів записів так:

with Dani do

with Data do

Міs:='лютий'

чи

with Dani do

with РІВ do

Рr:='Юрків'

або

with Dani, Data do Мis:='лютий'

чи

with Dani,РІВ do Рr:='Юрків'

Якщо фрагмент програми містить операції над різними записами, то в операторі приєднання можна зазначити список потрібних імен змінних - записів, розділених комою:

with V1, V2, V3 do 

Це еквівалентне записові

with V1 do with V2 do with V3 do

У цьому випадку треба мати на увазі таке: якщо деякий ідентифікатор F є полем, наприклад V1 і V2, то він буде інтерпретований як V2.F, а не як V1 .F. Тобто ідентифікатор поля пов'язують з останнім іменем запису в списку оператора with.

Треба пам'ятати, що всі ідентифікатори в межах дії оператора приєднання перевіряються, чи можна їх інтерпретувати як поля записів, зазначених у заголовку. Якщо так, то вони завжди будуть визначені саме так, навіть якщо є доступні звичайні змінні з такими самими ідентифікаторами.

Усі імена полів одного запису повинні бути різними, якщо вони є на одному рівні. Якщо ж одне ім'я визначене всередині області дії іншого імені або ці імена визначені в областях дії різних полів одного запису, то вони можуть бути однаковими. Очевидно, що різні записи можуть містити поля з однаковими іменами. Наприклад:

type

<ім'я_запису>=гесоd 

<ім'я поля_1>: record 

<ім'я_поля_1.1>: <тип>;

....................................

<ім'я_поля_1.n>: <тип>

end;

<ім'я_поля_2>: record 

<ім'я_поля_2.1>: <тип>;

……………………….

<ім'я_поля_2.m>: <тип>

end;

<ім'я_поля_3>: <тип>

end;

Однаковими можуть бути <ім'я_поля_1> та <ім'я_поля_1.1> або <ім'я_поля_1.1> та <ім'я_поля_2.1>. Імена <ім'я_поля_1> та <ім'я_поля_2>, а також <ім'я_поля_1.1> та <ім'я_поля_1.2> не можуть збігатися.


 

А также другие работы, которые могут Вас заинтересовать

66871. Решение алгебраических и трансцендентных уравнений. Метод половинного деления 499 KB
  Анализ технического задания Для выполнения задания требуется: Найти область определения функции корень. Блок-схема алгоритма Блок-схема функции представлена на рисунке 2. Выполняемые функции реализует алгоритм нахождения корня уравнения.
66872. РАСЧЕТ ЭЛЕКТРОПРИВОДА И ВЫБОР СХЕМЫ УПРАВЛЕНИЯ 997 KB
  Электроприводом называется электромеханическая система, состоящая из взаимодействующих электрических, электромеханических и механических преобразователей, а также управляющих, информационных устройств и устройств сопряжения...
66873. Понятие расчетных правоотношений 133.5 KB
  Безналичные расчеты осуществляются на основании платежных инструкций клиента вид форма и обязательные реквизиты которых устанавливаются Национальным банком Республики Беларусь. В тех случаях когда счета плательщика и бенефициара открыты в одном банке либо если бенефициар не имеет счета в банке...
66874. Подготовка детей к обучению грамоте. Ознакомление детей со слоговым строением слова 238 KB
  Современная школа требует от детей, поступающих в первый класс, не столько какой-либо суммы знаний и умений, сколько способности к действию в умственном плане, которая формируется в процессе усвоения системы знаний, которая станет основой будущего изучения предмета.
66875. Устройство оптоэлектроники 702.06 KB
  Изобразить структуру фотоприемника. Изобразить ВАХ фотоприемника. Дать определение основным параметрам. Пояснить принцип работы фотоприемника. Фототиристор Фотоприемный прибор, имеющий три и более р-п перехода, в ВАХ которого имеется участок отрицательного дифференциального сопротивления, называются фототиристорами.
66876. Структура лексического значения 135 KB
  Так если денотатом слова птица в первом понимании является множество всех птиц то во втором понимании образ типичной птицы. В первом случае слова враги друзья указывают на конкретное окружение Онегина.
66877. Фонема. Система фонем 90.46 KB
  Один из важнейших аспектов учения о звуковой стороне языка состоит в различении понятий звука речи и фонемы. Звук речи – минимальная единица речевой цепи, являющаяся результатом сложной артикуляционной деятельности человека и характеризующаяся...
66878. Язык как система знаков 156 KB
  Знаки и образуемые ими знаковые системы изучает семиотика (семиология). Мысль о языке как системе знаков наиболее явно сформулировал Фердинанд де Соссюр. Система – это множество однородных элементов (в нашем случае – знаков), которые находятся между собой в определенных отношениях и образуют единство.
66879. ФАЗЫ В МЕТАЛЛИЧЕСКИХ СПЛАВАХ 38 KB
  Твердыми растворами называют фазы в которых один из компонентов сплава сохраняет свою кристаллическую решетку а атомы другого или других компонентов располагаются в решетке первого компонента растворителя изменяя ее размеры периоды.