Логин: Пароль:    Регистрация Всеми возможностями сайта можно пользоваться
только после авторизации.
   Забыли пароль?

Поиск
L



Статистика
u
Пользователи онлайн: нет
Гостей онлайн: 5
Всего онлайн: 5
Зарегистрировано юзеров: 5860
Комментариев на сайте: 626
Новый юзер: Craigwoult



Последние комментарии
c
s1t1n прокомментировал "Урок 9 - Экспорт .3DS модели из 3DS max 2009 в OpenGL":
Отлично.
niaz-gtn прокомментировал "Урок 71 - Работа с сжатыми файлами":
7z.dll - приложите.



Мы в соцсетях
c
Delphi
Урок 87 - Оператор GOTO

Инструкции if и case используются для перехода к последовательности инструкций программы в зависимости от некоторого условия. Поэтому ихиногда называют инструкциями условного перехода. Помимо этих инструкций управления ходом выполнения программы существует еще одна — инструкция безусловного перехода goto. В общем виде инструкция goto записывается следующим образом:

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

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

Листинг:
procedure TForml.ButtonlClickfSender: TObject);
label // раздел объявления меток
bye;
var
n: integer; // проверяемое число
d: integer; // делитель
r: integer; // остаток от деления п на d
begin
n:=StrTo!nt(Edit1.text);
if n <= 0 then
begin
MessageDlg('Число должно быть больше нуля.',
mtError,(mbOkl,Q);
Editl.text:= '';
goto bye;
end;
// введено положительное число
d: = 2; // сначала будем делить на два
repeat
r:= n mod d;
if r о 0 // n не разделилось нацело на d
then d:= d + 1;
until r = 0;
Iabel2.caption:=Editl.text;
if d = n
then Iabel2.caption:=label2.caption+ ' — простое число.' 
else Iabel2.caption:=labe!2.caption+ ' — обычное число.';
bye:
end;
 
В литературе по программированию можно встретить суждения о недопустимости применения инструкции goto, поскольку она приводит к запутан ности программ. Однако с категоричностью таких утверждений согласиться нельзя. В некоторых случаях применение инструкции goto вполне оправдано. Приведенный пример, где инструкция goto используется для аварийного завершения процедуры, относится именно к таким случаям.

Удачи!
Встретимся в следующем уроке!


Источник: www.thedelphi.ru
Автор: Савельев Александр
Опубликовано: 6 Октября 2013
Просмотров: 6217

Урок 86 - Оператор CASE Урок 88 - Рекурсия

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