Команды BREAK и CONTINUE

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

Например, если в строке S требуется найти номер первого пробела, можно применить следующие операторы:

 

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

 

N:=0;

for i:=1 to Length(S) do

if S[i] = ’ ’ then

begin

N:=i;

Break;

end;

 

В переменной N хранится номер подходящего символа (перврначально-0). В цикле выполняется проверка каждого символа строки, при обнаружении пробела происходит запоминание номера символа и прерывание выполнения тела цикла. Затем значение переменной N сравнивается с нулем, чтобы определить, был ли найден нужный символ.

В программировании имеется команда, по своему действию противоположная команде прерывания цикла. Она позволяет немедленно продолжить выполнение цикла, пропустив все оставшиеся операторы в теле цикла. Эта команда (подпрограмма без параметров, играющая роль оператора) записывается так: Continue;

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

 

N:=0;

for i:=1 to Length(S) do

Begin

If S[i] <> ‘ ’ then Continue;

N:=i;

Break;

End;

 

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