READLN(X);
IF X>=10 THEN IF X>10 THEN Y:=2*X ELSE Y:=3*X WRITELN(Y); В этом примере оператор Y:=3*X будет выполняться только в том случае, когда X=10, т.к. он является частью вложенного оператора IF. Если же требуется выполнить этот оператор для случая, когда X<10, т.е. сделать оператор Y:=3*X частью внешнего оператора IF, то следует построить программу по-другому:
Y:=0; WRITELN(‘введите X=’); READLN(X); IF X>=10 THEN BEGIN IF X>10 THEN Y:=2*X END ELSE Y:=3*X WRITELN(Y); Оператор выбора CASE Оператор выбора позволяет выбрать одно из нескольких возможных продолжений программы. Его структура:
CASE <ключ выбора> OF <список выбора> ELSE <оператор> END где <ключ выбора> - выражение порядкового типа (обычно целого или символьного); <список выбора> - одна или более конструкций следующего вида: <константа выбора>: <оператор>, где <константа выбора> - константа того же типа, что и выражение <ключ выбора>. Вначале вычисляется значение выражения <ключ выбора>. Затем в последовательности операторов <список выбора> отыскивается такой, которому предшествует константа, равная вычисленному значению. Найденный оператор выполняется, после чего оператор CASE заканчивает свою работу. Если в списке выбора не будет найдена константа, соответствующая вычисленному значению ключа выбора, то выполняется оператор, стоящий после слова ELSE: VAR S:CHAR; BEGIN WRITE(‘введите b, c или d: ’);
|