Вторник, Октябрь 20Добро пожаловать!

Понятие инструкции goto в языке Delphi

При использование инструкций if и case осуществляется переход к последовательности инструкций разрабатываемой программы, руководствуясь некоторым заранее известным  условием. Поэтому эти инструкции иногда носят название инструкций условного перехода. Кроме данных инструкций управления процессом дальнейшего хода работы программы существует еще один оператор goto в языке Delphi (инструкция безусловного перехода).

Как выглядит оператор goto в языке Delphi? Общий вид инструкции goto Delphi представляется так:

goto Метка

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

Метку, встречающуюся в инструкции goto, необходимо объявить в разделе описания меток (этот раздел начинается зарезервированным словом label и находится перед разделом описания переменных var). В исходном коде программы программист ставит метку перед той инструкцией, к которой собственно и будет впоследствии выполняться переход при исполнении инструкции goto. Сразу после введенной метки нужно поставить двоеточие.

Примеры оператора goto в языке Delphi

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

procedure TForm1.Button1Click(Sender: TObject);
label // раздел объявления меток bye;
var
n: integer; // проверяемое число
d: integer; // делитель
r: integer; // остаток от деления n на d begin
begin
n:=StrToInt(Edit1.text);
if n <= 0 then
begin
MessageDlg(‘Число должно быть больше нуля.’, mtError, [mbOk] , 0) ;
Edit1.text:= »; goto bye;
end;
// введено положительное число
d:= 2; // сначала будем делить на два
repeat
r:= n mod d;
if r 0 // n не разделилось нацело на d
then d:= d + 1;
until r = 0;
label2.caption:=Edit1.text;
if d = n
then label2.caption:=label2.caption + ‘ — простое число.’
else label2.caption:=label2.caption + ‘ — обычное число.’;
bye:
end;

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

В некоторых книгах по программированию Вы можете встретить суждения о том, что недопустимо применять инструкцию goto, так как это использование может привести к запутанности создаваемых программ. Но согласится с этим утверждением объективно нельзя. Бывают случаи, когда использование инструкции goto просто необходимо и оправдано. Представленный выше пример программы с применением инструкции goto — и есть тот случай.

Друзья, надеюсь Вы разобрались, как действует безусловный оператор goto в языке Delphi. До следующих статей.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *