Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Pascal_учебник_3.doc
Скачиваний:
33
Добавлен:
11.04.2015
Размер:
937.47 Кб
Скачать

10. Использование переменных ограниченного типа

Тип, который определяется как подмножество другого, уже определенного типа, называется ОГРАНИЧЕННЫМ (типом-диапазоном).

В качестве базового может выступать любой порядковый тип, кро­ме типа диапазона. Определение ограниченного типа для типа REAL не допускается.

Ограниченный тип задается границами своих значений внутри базового типа:

<min значение>..<maxзначение>

где <min значение> - наименьшее значение;

<max значение> - наибольшее значение;

.. - специальный символ, которым разделяются границы типа - диапазона.

Общий вид описания ограниченного типа следующий:

TYPE

<Имя типа>=<Нижняя граница>..<Верхняя граница>;

Общий вид описания переменных ограниченного типа следующий:

VAR

<Имя переменной>:<Нижняя граница>..<Верхняя граница>;

или

VAR

<

причем,

Имя переменной>:<Имя типа>;

Нижняя граница <= Верхняя граница

Ограниченный тип сохраняет все свойства, характерные для производного типа, и отличается лишь тем, что имеет ограниченный диапазон значений.

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

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

Примеры заданий ограниченных типов и переменных ограниченного типа:

Type

days =1..31; {дни месяца}

month=1..12; {месяцы}

napravlenie=(sever,ug,vostok,zapad); {перечислимый тип}

Var

a,b:days;

nedely:1..7;

x:month;

m:array [month] of days; {массив ограниченного типа}

world:ug..zapad;

Задания

№1. Имеются описания:

Type digit='0'..'9';

Var d:digit; k:0..9; n:integer;

Допустимы ли присваивания:

1) d:='7'; 2) d:='a'; 3) d:=7; 4) k:=5; 5) k:=10;

6) k:=-0; 7) k:='5'; 8) k:=ord(d); 9) k:=ord(d)-ord('0')?

№2. Указать ошибки в следующих описаниях:

const n=180; e=2.7;

type cifra='0'..'9';

bukva=a..z;

ugol =-n..n;

otrezok=0..n-1;

period=-e..e;

plus='+'..'+';

Color=(White,Red,Blue,Yellow,Purple,Green,

Orange,Black);

c_r =Blue..Green;

c_r2=Orange..Red;

№3. Имеется описание:

Var k:1..9;

Написать программу, которая будет печатать значение переменной k римскими цифрами.

11. Использование переменных множественного типа

В качестве базового типа множества может выступать любой простой порядковый тип (integer,char или какой-нибудь иной, определенный программистом).

Максимально возможное число значений - 256. Для целочисленных множеств могут присутствовать числа не меньше 0 и не больше 255.

Порядок элементов во множестве не имеет значения, т.е. [2,4,6] и [4,2,6] - одно и то же множество.

Многократное повторение какого-либо элемента никак не влияет на состав множества, т.е. [2,2,4,6] и [4,2,6,4] - одно и то же множество.

Объявление множества:

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]