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

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

 

Пусть необхадимо выполнить действия над комплексными числами вида a+ib, i^2= – 1. Так как в паскале нет необходимиго типа то его можно внести самостоятельно. При задания комбинированного типа, будем исходить из следующих правил:

<комбинированный тип>::=Record <список полей> end;

<список полей>::=<секция записи>|{;<секция записи>}

<секция записи>::=<имя поля>{,<имя поля>}:<тип>

Type Compl=