КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Условные операторыВ Турбо Паскале имеются два условных оператора IF и CASE. Рассмотрим оператор IF. С помощью оператора IF выбирается и выполняется один из операторов, входящих в его состав. Формат оператора: IF <логическое выражение> THEN <оператор1> ELSE <оператор2> Выполнение такого условного оператора происходит так: если логическое выражение истинно, то выполняется первый оператор, если ложно, то второй. Условный оператор используется также в сокращенной форме: IF <логическое выражение> THEN <оператор> В этом случае, если логическое выражение ложно, то не происходит никаких действий. По синтаксису после THEN и ELSE может стоять только один оператор, поэтому если необходимо выполнить несколько операторов, то их объединяют в составной оператор. Примеры условных операторов: IF X<0 THEN I:=I+1 ELSE K:=K+1 IF (X<Y) AND D THEN BEGIN X:=SIN(X); Y:=Y+1 END Во втором примере D - логическая переменная. Рассмотрим оператор CASE. Часто в программе бывает необходимо проверять достаточно много условий и в зависимости от них выполнять те или иные действия. Для этого можно использовать многократно вложенные друг в друга условные операторы. Однако в этом случае программа становится громоздкой и ее трудно понимать. Считается, что число уровней вложения не должно превышать двух-трех. Если же необходимо выбирать из большего числа условий, то целесообразным становится применение оператора варианта. Формат оператора: CASE <селектор варианта> OF <константа варианта 1>:<оператор 1>; <константа варианта 2>:<оператор 2>; '... <константа варианта n>:<оператор n> END Селектор варианта может быть любого простого типа, за исключением типа REAL. Константы варианта должны быть того же типа, что и селектор варианта. При выполнении оператора варианта сначала вычисляется значение селектора варианта, а затем выполняется тот оператор, который отмечен константой варианта, имеющей данное значение. Если подходящей константы нет, то возникает ошибка. Чтобы избежать этого в Турбо Паскале предусмотрена следующая конструкция: CASE <селектор варианта> OF <константа варианта 1>:<оператор 1>; ... <константа варианта n>:<оператор n>; ELSE <оператор> END Теперь, если значение селектора варианта не совпало ни с одной константой, то будет выполняться оператор, записанный после служебного слова ELSE. Для того чтобы пометить оператор в списке выбора, можно использовать несколько констант варианта, а также диапазоны. Например: CASE CH OF 'A','B','E','I':CH1:=SUCC(CH1); 'K'..'R':CH1:=PRED(CH1) END; Отметим, что если после константы варианта нужно выполнить не один, а несколько операторов, то необходимо использовать составной оператор.
|