Обозначим через х число, вводимое с клавиатуры пользователем (это переменная целого типа). х принадлежит заданному интервалу лишь в том случае, если одновременно выполняются оба условия: (х>0) и (х<5).
Prugram Example_18;
Var x: Integer;
Begin
Writeln('Введите число х');
Readln(х);
If (x>0) and (x<5) Then
Writeln (х,' принадлежит (0,5)')
Else
Writeln(x,' не принадлежит (0,5)');
Readln;
End.
§12. Оператор безусловного перехода.
Раздел описания меток
Общий вид оператора
Goto <метка>
где Goto (итди к) − служебное слово, метка − целое число без знака, определяемое в разделе Label как метка оператора. Раздел описания меток (Label) следует после заголовка программы. Любой оператор в программе можно выделить, поставив перед ним метку − целое число без знака, содержащая не более четырех цифр. Метка от оператора отделяется двоеточием. Появление меток в программе дает возможность сослаться на эти метки для изменения хода выполнения программы. Все метки должны быть перечислены в разделе описания меток, например:
Label 1,12, 999;
Раздел Label может отсутствовать, если в программе меток нет.
Оператор перехода Goto производит передачу управления к оператору, помеченному указанной меткой.
Применение оператора безусловного перехода является необязательным и нежелательным, так как присутствие этого оператора в программе нарушает ее структурную целостность и наглядность, такую программу становится трудно читать, отлаживать и модифицировать. Используют операторы Goto лишь в исключительных случаях, например, для выхода из структурного (составного) оператора при возникновении особой ситуации в программе.
Пример
Найти количество целых четных чисел, вводимых с клавиатуры. Выход из программы по вводу 0.
ProgramExample_19;
Label 1;
var a,k: integer;
Begin
k:=0;
1: Writeln('Введите число');
Readln(a);
If a<>0 then
Begin
If a mod 2=0 then k:=k+1;
Goto 1;
End;
Writeln('количество четных чисел= ',k);
Readln;
End.
С помощью оператора безусловного перехода нельзя выйти из подпрограммы, так как метки действуют только в том блоке, в котором они описаны. Для того, чтобы прервать выполнение процедуры или функции, можно воспользоваться стандартными процедурами:
Halt − прерывание программы, независимо от того, в каком месте программы стоит эта процедура;
Exit − завершение выполнения текущего блока, переход в его конец.
§13. Вложенные условные операторы
При решении задач часто приходится рассматривать не два, а большее количество вариантов. Это можно реализовать, используя несколько условных операторов. В этом случае после служебных слов Then и Else записывается новый условный оператор.
Пример
Даны целые числа а, b, с. Если а<b<с, то все числа заменить их квадратами, если а>b>с, то каждое число заменить наименьшим из них, в противном случае сменить знак каждого числа.