Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции / Л-4(EXPRESS) / Конспект лекций.doc
Скачиваний:
66
Добавлен:
16.05.2015
Размер:
567.3 Кб
Скачать

Слайд 30. Агрегированный тип

Пояснения

Агрегированный типпредставляет собой встроенный тип языкаEXPRESS, элементами области значений которого являются наборы значений (а не единичные значения, как в случае с простым типом). В такой набор включаются только значения одного типа, называемогобазовым типомданного агрегированного типа. Сам набор конкретных значений называетсяэкземпляромагрегированного типа. Отдельные значения из набора значений являютсяэлементамиагрегированного типа. Всего вEXPRESSсуществует четыре агрегированных типа:

  • Массив (ARRAY).

  • Список (LIST).

  • Множество (SET).

  • Мультимножество (BAG).

На агрегированные типы языка EXPRESSмогут накладываться дополнительные ограничения, требующиеуникальностивсех элементов в наборе значений (в таком случае в объявлении типа употребляется ключевое слово «UNIQUE») или разрешающиеотсутствиеотдельных элементов в наборе значений (в таком случае в объявлении типа употребляется ключевое слово «OPTIONAL»). Например, в объявленном на слайде массиве могут отсутствовать отдельные элементы, а в объявленном на слайде списке все элементы должны быть уникальны.

Слайд 31. Массив (array)

Пояснения

Элементы агрегированного типа «Массив» упорядочены, а размер набора значенийфиксирован. Каждый элемент массива проиндексирован по порядку целым числом и доступ к элементу осуществляется в соответствии с его номером. Массив значений может быть использован для представления, например, координат точки в пространстве, которые упорядочены согласно осям координат и количество которых строго фиксировано. При обозначении массива используется ключевое слово «ARRAY», за которым идет спецификация границ массива, состоящая из двух чисел. Первое число обозначает наименьший номер элемента массива, а второе число обозначает наибольший номер элемента массива. После ключевого слова «OF» идет базовый тип данных массива.

На слайде приведены примеры объявления массивов из 10 элементов:

  • ARRAY[1:10] OF REAL - массив типа REAL. Наименьший номер элемента массива 1, наибольший 10.

  • ARRAY[0:9]OFOPTIONALsomething- массив типаsomething, допускающий отсутствие некоторых элементов. Наименьший номер элемента 0, наибольший 9.

  • ARRAY[-5:4]OFUNIQUESTRING- массив типаSTRINGвсе значения которого должны быть уникальны. Наименьший номер элемента -5, наибольший 4.

Слайд 32. Список (list)

Пояснения

Агрегированный тип «Список» представляет собой последовательность значений. Элементы последовательности упорядочены, но размер последовательности по умолчаниюне фиксирован. Элементы списка не являются проиндексированными, а доступ к ним осуществляется по номеру позиции, которую они занимают в списке. Примером списка является перечень операций, которые необходимо выполнить при проектировании изделия. Эти операции упорядочены, но их перечень и количество могут меняться из-за добавления и удаления операций. При обозначении списка используется ключевое слово «LIST», за которым может идти спецификация его размера: минимальное и максимальное количество элементов (в противном случае размеры списка не фиксированы). При этом список может иметь наименьшую границу, но быть неограниченным сверху, для этого вместо второго числа после двоеточия ставится знак неопределенного значения, т.е. «?».

На слайде приведены примеры объявления списков:

  • LISTOFINTEGER– список неограниченного числа элементов типаINTEGER;

  • LIST[1:10]OFUNIQUEsomething- список десяти элементов типаsomething, значения которых должны быть уникальными. Наименьший номер элемента списка 1, наибольший 10;

  • LIST[1: ?]OFSTRING- неограниченный сверху список элементов типаSTRING. Наименьшая граница списка 1.