Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаб3_ветвление.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
57.07 Кб
Скачать

Лабораторная работа № 3 программирование алгоритмов разветвляющейся структуры

Цель работы: овладение практическими навыками разработки и программирования разветвляющихся процессов с использованием условных операторов (If...then... else... и Case).

Теоретические сведения

Операторы условного перехода (If, Case)

Операторы условного перехода позволяют выбрать для исполнения один из нескольких операторов-компонентов в зависимости от условия.

Оператор If. Его синтаксис:

If A

then ST1

else ST2;

где:

A – булевское выражение (возвращающее TRUE или FALSE);

ST1, ST2 – операторы (возможно пустые или составные).

Если значение выражения A – TRUE, то выполняется оператор ST1; если значение выражения A – FALSE, то выполняется оператор ST2. Затем, в обоих случаях управление передается следующему оператору программы. Допускается и краткая форма условного оператора:

If A then ST;

где:

A – булевское выражение;

ST – оператор (возможно составной).

Если значение A – TRUE, то выполняется оператор ST. Если значение A – FALSE, то управление передается оператору, следующему за оператором IF.

Обычно при написании программы не рекомендуется использовать многократно вложенные друг в друга условные операторы – программа становится громоздкой и трудно понимаемой. Считается, что число уровней вложения не должно превышать двух-трех. Но как быть, если необходимо проверять достаточно много условий и в зависимости от них выполнять те или иные действия? Для этих целей в языке Pascal существует специальный оператор выбора Case.

Оператор выбора Case. Его синтаксис:

Case P of

a: S1;

b: S2;

n: Sn

else Sn+1

end;

где:

Case («случай») – служебное слово;

P – переменная, называемая селектором или переключателем;

a, b – константы выбора;

S1, S2, Sn, Sn+1 – операторы.

При выполнении этого оператора сначала вычисляется некоторое выражение p, называемое селектором выбора, а затем в зависимости от полученного значения (если оно равно одной из констант a, b, …, n, которые называются константами выбора), выполняется один из операторов: S1, S2,…, Sn, помеченные соответствующей константой. Если значение выражения P не совпадает ни с одной из констант выбора, выполняется оператор Sn+1, содержащийся после ключевого слова else, причем ветвь else в операторе Case необязательна. Использованные здесь зарезервированные слова Case, of, else, end имеют смысл вариант, из, иначе, конец.

Каждый из операторов в операторе Case, помеченный константой выбора может быть составным.

Выражение, играющее роль селектора, должно принадлежать порядковому типу данных (т.е. типу, имеющему конечное число значений). Например: Integer, Boolean, Char.

Кроме одиночных констант, в вариантах оператора Case могут использоваться диапазоны значений и списки. Например:

Case x of

1..5: S1;

2, 3, 8: S2;

4, 6, 9..13: S3

else S4

end;

Составной оператор

Составной оператор представляет собой группу из произвольного числа операторов, отделенных друг от друга точкой с запятой, и ограниченную операторными скобками – зарезервированными словами в языке Pascalbegin и end:

Поэтому приведенный оператор можно мысленно представить в таком виде: (S1;S2;…Sn).Составной оператор используется в том случае, если необходимо выполнить последовательность операторов внутри какой-либо конструкции как единое целое.

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