Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции2семестр.doc
Скачиваний:
66
Добавлен:
15.04.2015
Размер:
228.35 Кб
Скачать
    1. Простые управляющие операторы

К простым управляющим операторам относятся операторы безусловных переходов. Они, как и все управляющие операторы, предназначены для изменения порядка выполнения написанных инструкций (команд). В Турбо-паскале таких операторов три: goto, continue и break. Иногда к ним относят процедуры Exit и Halt. Рассмотрим работу этих операторов.

Оператор безусловного перехода.

Вид оператора

goto <метка>;

Назначение – передача управления в программе на оператор, помеченный меткой <метка>. Меткой может выступать имя (написанное по правилам для имен языка) или целое число без знака, описанное в операторе описания меток Label, и стоящее перед помеченным оператором, но только в одном месте программы. Метка отделяется от оператора символом «:».Переход на метку может встречаться в блоке несколько раз, но сама метка - только один раз. Если на какую-то метку нет передачи управления, ошибки не будет.

Оператор безусловного перехода, вообще говоря, не разрешен в структурном программировании. Хотя он позволяет сократить текст программы, его использование в паскале ограничено рядом правил и рекомендаций. Запрещается переходить внутрь составного оператора, внутрь или на начало подпрограммы и выходить из подпрограммы в вызвавшую ее программу. Не рекомендуется выполнять переход за пределы страницы (экрана) текста программы, кроме перехода на завершающие операторы программы. Все это связано с возможностью пропуска важных операторов для правильного функционирования программы. Обычно оператор безусловного перехода используется только для возврата на начало тела цикла, если цикл конструируется с помощью условного и безусловного операторов.

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

Оператор продолжения цикла.

Вид оператора:

continue;

Назначение – прекращение выполнения текущего шага цикла и переход на выполнение следующего шага цикла (т.е. переход на конец тела цикла). Оператор можно использовать, начиная с 6-й версии Турбо-паскаля. Как правило, этот оператор используется внутри условного оператора. Пример использования оператора – смотри в описании операторов цикла.

Оператор прекращения (прерывания) цикла.

Вид оператора:

break;

Назначение – прекращение выполнения текущего цикла и переход на выполнение следующего за циклом оператора. Оператор можно использовать, начиная с 6-й версии Турбо-паскаля. Как правило, этот оператор используется внутри условного оператора. Пример использования оператора – смотри в описании операторов цикла.

    1. Понятие составного оператора, операторные скобки

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

Почти все управляющие операторы являются составными, исключением являются операторы безусловных переходов (goto, continue и break).

Кроме того, составным оператором называется группа операторов, заключенная в операторные скобки begin .. end. Внутри группы, операторы разделяются символом «;». Группа операторов создается, если в управляющем операторе необходимо по истинности или ложности некоторого логического выражения выполнить не одно, а несколько действий (операторов). Ни в каких других случаях, группу операторов создавать не следует.

Группа операторов может создаваться для формирования тела цикла и в полных и неполных условных операторах. В начале группы ставится открывающая операторная скобка begin, в кнце – закрывающая скобка – end. Таким образом, ключевое слово begin может встречаться только после слов do, then и else (а также в начале выполняемого блока).

Следует отметить, что ключевые слова repeat .. until, используемые в операторе цикла с постусловием, одновременно выполняют роль операторных скобок, и не требуют дополнительно скобок begin .. end.

Лекция 14

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