Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Язык программирования Pascal - redact Мигунов.doc
Скачиваний:
8
Добавлен:
20.09.2019
Размер:
434.69 Кб
Скачать

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

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

Задаются:

Type

<имя перечислимого типа>=(<список констант перечислимого типа>);

var

<имя переменной перечислимого типа>:<имя перечислимого типа>;

Пример программы:

Program ma;

Uses crt;

type

animals=(lisa, volk, zayac, zybr, tigr, lev, medved, kosylya, olen, bars);

var

T, K, Z: animals;

n1, n2, n3: byte;

begin

T:= tigr;

K;=kocylya;

Z:= zayac;

n1:=ORD (T)+1;

n2:=ORD (SUCC(K))+1;

n3:=ORD (PRED(Z))+1;

writeln (n1);

writeln (n2);

writeln (n3);

End.

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

Если переменная принимает не все значения своего типа, а только в некотором диапазоне, то эта переменная является переменной ограниченного типа, ограничение типа задается указанием диапазона, т.е. минимального и максимального значений. Тип из которого выбирается отрезок называется базовым. Ограниченный тип задается:

Type

<имя ограниченного типа>=<константа1>..<константа 2>;

var

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

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

  1. Константа 1 и константа 2 должны быть одного типа.

  2. Константа 1 должна быть меньше константы 2.

  3. В качестве базового типа можно использовать целый тип данных, символьный, логический и перечислимый.

  4. Нельзя использовать вещественный тип данных.

  5. Над переменными ограниченного типа можно осуществлять все операции определенные для базового типа.

Тип «диапазон» обычно используют при задании массивов и операторов case.

Type

Letter=’a’…’m’;

Number=1…8;

Var

Buk:letter;

C:number;

Оператор цикла

Многократно повторяемый участок вычислений называется циклом, а переменные, изменяющиеся в цикле – переменными цикла. Алгоритм циклической структуры в общем виде должен содержать:

  1. Подготовку цикла, т.е. задание начальных значений переменным цикла перед первым выполнением цикла.

  2. Тело цикла – это действие, повторяемое в цикле для разных значений переменных цикла.

  3. Модификацию, т.е. изменение значений переменных цикла перед каждым новым повторением цикла, в противном случае цикл будет бесконечным.

  4. Управление циклом, т. е. проверка условия продолжения или окончания цикла и переход на начало цикла, если выполняется условие продолжения цикла или выход из цикла по его окончанию.

Оператор цикла с предусловием

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

Цикл имеет следующую структуру:

Описывается следующим образом:

<установка начального значения>;

while <логическое выражение> do

begin

<тело цикла>;

<изменение параметров>;

end;

Выполняется следующим образом:

  1. Вычисляется логическое выражение.

  2. Если результат равен true, то выполняется оператор после do и снова вычисляется логическое выражение.

  3. Если результат логического выражения равен false, то действия после do пропускается и выполняется действие далее по программе.

Пример программы:

Program ma;

var

k: integer;

a: char;

begin

writeln (‘Введите символ’);

readln (a);

k:=0;

while a<>’.’ do

begin

k:=k+1;

writeln (‘Введите следующий символ’);

readln (a);

end;

k:=k-1;

writeln (k);

end.