Ограниченный тип данных

Множество значений стандартных скалярных типов данных и перечисляемых скалярных типов упорядочено и конечно (кроме вещественного типа).

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

Описание ограниченного типа имеет вид:

TYPE <имя_типа> = константа..константа;

Обе граничные константы должны быть одного типа, в качестве базового типа можно использовать любой простой тип, кроме действительного (REAL). Начальное значение для определения ограниченного типа не должно быть больше конечного. Переменные ограниченного типа должны быть описаны в разделе переменных с помощью имён этих типов.

К переменным ограниченного типа применимы все операции и стандартные функции, допустимые при работе с переменными соответствующего базового скалярного типа.

Например.

TYPE DAY = (MO, TU, WE, TH, FR, SA, SU);

NOM = 10..25;

SSS = ‘C’..'X';

WD = FR..SU;

Для ограниченного типа NOM базовым является целый тип, для SSS – символьный, для WD – определённый ранее перечислимый тип DAY.

Из примера видно, что для определения ограниченного типа указываются начальное и конечное значения, которые может принимать константа базового типа на этом отрезке, разделённые двумя точками (..).

6.3. Оператор выбора (варианта)

Характерной чертой многих алгоритмов является широкая разветвляемость, задаваемых ими вычислительных процессов. Для задания таких разветвлений используют условный оператор, по которому выбирается ход вычисления в зависимости от выполнения одного, двух условий. Но на практике часто встречаются случаи, когда вычислительный процесс надо разветвить не по двум, а по К (К>2) возможным путям. Это можно сделать и при помощи условного оператора, но в этом случае структура программы будет громоздкой:

IF B1 THEN S1 ELSE

IF B2 THEN S2 ELSE

IF BK THEN SK ELSE

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


Полный формат оператора:

CASE <ключ_выбора> OF

константа1: оператор1;

константа2: оператор2;

константаN: операторN;

else оператор;

end;


Краткий формат оператора:

CASE <ключ_выбора> OF

константа1: оператор1;

константа2: оператор2;

константаN: операторN;

end;


Здесь CASE (в случае), OF (из), END (конец) – служебные слова. <ключ_выбора> - является селектором, значение которого может быть целого, литерного, логического типа, либо типом, определяемым пользователем (за исключением действительного типа REAL).

Константы должны быть того же типа, что и селектор. Выбор оператора определяется совпадением значений селектора и константы, стоящей перед оператором: если значение выражения равно одной из констант, то выполняется соответствующий ей оператор, а управление передаётся за пределы оператора выбора. Если значение выражения не совпадает ни с одной константой, то управление передаётся за пределы оператора.



Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: