Студопедия

КАТЕГОРИИ:


Архитектура-(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)

Вопросы для проверки знаний

Type

Type

Перечисляемый тип данных

Перечисляемый тип данных. Строковый тип. Множества. Записи. Файлы

Перечисляемый тип является простым и порядковым. Он позволяет объединить вместе, в рамках одного типа ограниченное и упорядоченное множество (список с разделителем запятая “,”) скалярных (одиночных) постоянных величин (констант), каждая их которых задается своим именем. Описание типа имеет следующий синтаксис:

type название типа = (список значений типа);

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

Пример 1. Описание типа с именем week (неделя):

type week = ( Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday);

Упорядоченным в списке значений типа константам автоматически присваиваются возрастающие на единицу номера, начиная с нуля. Поэтому к перечисляемым переменным и константам могут быть применены все операции сравнения и стандартные функции из библиотеки системных функций pred(), succ(), ord():

ord(Е) – возвращает номер элемента Е в множестве;

succ(Е) – возвращает следующее значение для Е;

pred(Е) – возвращает предыдущее значение для Е.

Для введенного типа week будут справедливы следующие отношения элементов:

Sunday<Monday<Tuesday<Wednesday<Thursday<Friday<Saturday;

ord( Sunday )=0;

ord( Tuesday )=2;

succ( Friday ) =Saturday;

pred( Saturday ) = Friday;

Для перечисляемых типов, как и для других порядковых типов, определены функции Low() и High(), которые возвращают начальный и конечный объект типа. Например, для типа week: Low(week)= Sunday, High(week)= Saturday.

Перечисляемые типы описываются в разделе описания типов.

Рассмотренные выше стандартныетипы, введенные дляодиночных величин, также можно эквивалентно представить в виде перечисляемых типов. Например, для типов boolean, char и integer описание можно задать следующим образом (запись вида #xxx означает символ, чей код в таблице ASCII равен xxx):

Boolean= (false, true);

char= #0..#255;

integer= -32768..32767;

Каждая константа может входить только в один из типов. Поэтому, если в программе описан тип week, то в нем нельзя использовать тип day_off (выходные):

day_off = ( Sunday, Saturday);

поскольку он содержит константы Sunday, Saturday, уже входящие в тип week.

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

var days: week;

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

var days: ( Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday);

1. В чем заключается назначение и каков синтаксис перечисляемого типа?

2. Как устанавливается порядок для элементов перечисляемого типа?

3. Где помещаются описания перечисляемых типов?

4. Может ли одна и та же величина входить в состав множеств элементов различных типов в одной программе?

5. Как переменные перечисляемого типа можно объявлять без предварительного описания этого типа?

6. Возможно ли описание типа следующего вида (ответ пояснить)?

type выходные_дни = (Воскресенье, Суббота);

7. Чему равны значения следующих функций для типа week: ord( Wednesday );ord( Friday )?

8. Чему равны значения следующих функций для типа type day_off = ( Sunday, Saturday): Low(day_off); High(day_off)?

<== предыдущая лекция | следующая лекция ==>
Общественно-политическая обстановка в крае в 20-30-е годы | При Александре I создается система образования, состоящая из 4 ступеней, преемственно связанных между собой
Поделиться с друзьями:


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


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



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




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