Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
выш.мат. методичка.DOC
Скачиваний:
30
Добавлен:
13.02.2015
Размер:
1.71 Mб
Скачать

5.1.2. Оператор безусловного перехода gото. Использование меток

Оператор GОТО позволяет изменить стандартный последовательный порядок выполнения операторов и перейти к выполнению программы, начиная с заданного оператора. Оператор, на который происходит переход, должен быть помечен меткой. Эта же метка должна быть указана и в операторе GОТО. Метки, используемые в Тurbо Pasсаl, могут быть двух типов:

• целым числом в пределах от 0 до 9999;

• обычным идентификатором.

Все используемые метки должны быть перечислены в разделе объявления меток, начинающемся зарезервированным словом label, например:

lаbеl 1,2, Меtkа;

Одной меткой можно пометить только один оператор. Метка от помеченного оператора отделяется двоеточием.

Использовать оператор GОТО следует очень осторожно. Применение его без особых на то оснований ухудшает понимание логики работы программы. Безусловный переход можно осуществлять далеко не из каждого места программы и не в любое место программы. Так, нельзя с помощью этого оператора перейти из основной программы в подпрограмму или выйти из подпрограммы. Не рекомендуется осуществлять переход внутрь структурированного оператора, т.к. он может дать неправильный результат, и т. д.

5.1.3. Пустой оператор

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

5.2. Структурированные операторы

Структурированными являются такие операторы, которые состоят из других операторов. К ним относятся:

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

условный оператор IF:

условный оператор САSЕ;

оператор цикла REPEAT;

оператор цикла WHILЕ;

оператор цикла FOR;

оператор над записями WITH.

Оператор над записями WITH будет рассмотрен позднее, остальные в данном разделе.

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

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

begin

<оператор 1>;

<оператор 2>;

….

<оператор N>;

end;

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

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

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

Можно считать, что и само тело программы, т. к. оно заключено в операторные скобки begin и еnd, тоже является составным оператором.

5.2.2. Условный оператор if

Оператор IF реализует алгоритмическую конструкцию РАЗВИЛКА и изменяет порядок выполнения операторов в зависимости от истинности или ложное некоторого условия. Существует два варианта оператора:

If S then А

еlse В; {полная развилка}

If S then А; {укорочённая развилка}

В этих операторах:

S - некоторое логическое выражение, истинность которого проверяется;

А - оператор, который выполняется, если выражение S истинно;

В - оператор, который выполняется, если выражение S ложно.

Так как условный оператор IF является единым предложением, ни перед then, ни перед еlsе точку с запятой ставить нельзя.

Пример использования оператора IF:

if Х < 0 then Х := -Y;

if Х < 1.5 then Z := Х + У

else Z := 1.5;