Условное «перемещение» выполнения программы к определенной
метке-указателю в самой программе, при этом пропускается весь код до
самой метки, а исполняется - после нее.
Синтаксис оператора goto:
<Оператор goto> ::= goto <Метка>
Необходимо знать, что всегда можно обойтись без оператора goto. Его использование затрудняет чтение и понимание программы.
Оператор goto осуществляет переход к оператору, помеченному специальной меткой, которая отделяется от самого оператора двоеточием. В качестве метки может быть использовано любое целое число без знака, содержащее более четырех цифр, или любое имя. Чтобы можно было использовать метку, она должна быть в обязательном порядке объявлена в разделе меток в описательной части программы. Этот раздел начинается служебным словом label, после которого через запятую перечисляются метки.
Чтобы перейти к помеченному оператору, используется оператор перехода, имеющий следующий вид:
Синтаксис оператора goto:
<Оператор goto> ::= goto <Метка>
Необходимо знать, что всегда можно обойтись без оператора goto. Его использование затрудняет чтение и понимание программы.
Оператор goto осуществляет переход к оператору, помеченному специальной меткой, которая отделяется от самого оператора двоеточием. В качестве метки может быть использовано любое целое число без знака, содержащее более четырех цифр, или любое имя. Чтобы можно было использовать метку, она должна быть в обязательном порядке объявлена в разделе меток в описательной части программы. Этот раздел начинается служебным словом label, после которого через запятую перечисляются метки.
Чтобы перейти к помеченному оператору, используется оператор перехода, имеющий следующий вид:
goto метка;
label goback;
var num: real;
begin
goback:
write ('Введите число: ');
readln (num);
if num < 0 then
goto goback;
num := sqrt (num);
write ('Квадратный корень: ', num:5:2);
readln
end.
Комментариев нет:
Отправить комментарий