77982

Комбинированные типы

Лекция

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

В отличии от массивов записи могут объединять значения различных типов и поэтому являются наиболее гибким механихмом построения данных. Запись состоит из фиксированного числа компонентов называемых полями записи. Что бы можно было ссылаться на тот или иной компонент записи поля именуются. Структура объявления типа записи такова: имя типа =RECORD список полей END Здесь: имя типа правильный идентификатор; RECORDEND – зарезервированные словазапись конец; список полей этот список представляет собой последовательность разделов записи...

Русский

2015-02-05

31.5 KB

0 чел.

Комбинированные типы

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

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

Структура объявления типа записи такова:

<имя типа>=RECORD<список полей>END

Здесь:

<имя типа> - правильный идентификатор;

RECORD,END – зарезервированные слова(запись, конец);

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

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

Type

Birthday = record

day, month: byte;

year: word

end;

var

a,b: Birthday;

……

В этом примере тип Birthday (день рожденье) содержит три поля с именами DAY, MONTH и YEAR.(день, месяц, год); переменные А и В содержат типы записи типа Birthday.

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

Например, для описания объекта (человек) могут понадобиться следующие характеристики:

. фамилия, имя, отчество (символьные массивы или строки);

 . пол (перечислимый тип из двух значений);

 . индекс специальности (целое) и т.д.

В этом случае описание комбинированного типа Person (человек) может выглядеть следующим образом:

Type

Person=record

Name, SecondName, SurName:string [20];

S: (Male, Female);

Speciality: Word

end;

Имея в программе вышеприведенное описание, можно определить переменные данного типа, например:

Var Sasha, Masha, Natasha: Person;

Примечания

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

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

Пример:

Type

Date=Record;

Month:(Jan,Feb,Mar,Apr,May,June,July,Aug,Sept,Oct,Nov,Decem);

Day:1..31;

Year:1900..2000;

end;

Person=Record;

Name,SecondName,SurName:string[20];

S:(Male,Female);

Speciality:Word;

Birthday:Date

end:

 доступ к полям из элемента Birthday производится по общим правилам, например:

Sasha.Birthday.Year:=1970;

Masha.Birthday.Month:=May;


 

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

65032. Их-Засаг - «Великая Яса» 53 KB
  Великая Яса Монголы один из древнейших народов Центральной Азии имеющий богатую историю и внесший свой вклад в развитие мировой цивилизации. Одновременно на Великом курултае в том же году был принята Великая Яса Чингисхана...
65033. Аноним Искандара как генеалогический источник 83.5 KB
  Согласно Анониму в начале своего правления Узбек назначил Сасы Буку сына Нокая правителем улуса Орды. Также интерес вызывают новые данные о правителе улуса Ордаэджена: КалакКубак сын Мангитая Макидая стал правителем улуса в 1320-1321 и еще правил в 1327-1328...
65034. Концепция базы данных “Дипломатические документы постордынских государств Джучиева улуса” 31.5 KB
  Это позволяет рассматривать сохранившиеся архивные материалы как один документальный массив и следовательно пытаться анализировать не отдельные ярлыки и письма а их совокупность проводить формальный анализ именно комплекса документов.
65035. Как называть Золотую Орду? 49.5 KB
  Как называть Золотую Орду Под названием Золотая Орда обычно мы подразумеваем государство существовавшее в XIII XV веках на обширной территории с центром в Нижнем Поволжье. Золотая Орда в мировой геополитике играла ведущую роль.
65036. РУСЬ И СТЕПЬ 643.5 KB
  Эти встречи со степью и определяли причудливые изгибы исторических судеб Руси. Соседство со степными просторами предопределило же превращение Руси в Россию когда восторжествовав наконец над Золотой Ордой русский народ приступил к освоению необъятных пространств Евразии.
65037. Золотоордынский город Сарай и роль ханской власти в его истории 32.5 KB
  Особенно большое внимание проблемам возникновения, развития и упадка джучидских городов и роли центральной власти в их судьбах уделял Г.А. Федоров-Давыдов.
65038. К вопросу о хронологии и топографии Селитренного городища эпохи Тохтамыша (1380 – 1396 гг.) 43.5 KB
  Для исследования использовались помимо публикаций материала отчеты Поволжской археологической экспедиции ПАЭ и каталог коллекции монет с Селитренного городища за 1965-1997 гг. Федоровым-Давыдовым 4932 медных и 112 серебряных монет.
65039. СЕЛИТРЕННОЕ ГОРОДИЩЕ: ХРОНОЛОГИЯ И ТОПОГРАФИЯ 254 KB
  Исследование округи Селитренного городища также актуально так как эта тема ещё не была объектом изучения. Целью диссертационной работы является изучение хронологии и топографии Селитренного городища.
65040. Неизвестное сочинение ХIII века 73.5 KB
  Речь идет о вымышленной биографии Чингисхана насыщенной фантастическими эпизодами. Римскую курию интересовал прогноз на будущее: кто они монголы Кто ими правит и к чему они стремятся И хотя брат Иоанн не скрывает каким образом ему удалось получить различные сведения о монголах имя самого...