Условная Инструкция (Conditional)

Условная Инструкция (Conditional)

Эта инструкция задает различные формы обработки в зависимости от выполнения определенных условий. Основная форма:

if boolean_expression then

instruction; instruction; ...

else

instruction; instruction; ...

end

где каждая ветвь может иметь произвольное число инструкций (а возможно и не иметь их).

Будут выполняться инструкции первой ветви, если boolean_expression верно, а иначе - второй ветви. Можно опустить часть else, если второй список инструкций пуст, что дает:

if boolean_expression then

instruction; instruction; ...

end

Когда есть более двух возможных случаев, можно избежать вложения (nesting) условных команд в частях else, используя одну или более ветвей elseif, как в:

if c1 then

instruction; instruction; ...

elseif c2 then

instruction; instruction; ...

elseif c3 then

instruction; instruction; ...

...

else

instruction; instruction; ...

end

где часть else остается факультативной. Это дает возможность избежать вложения

if c1 then

instruction; instruction; ...

else

if c2 then

instruction; instruction; ...

else

if c3 then

instruction; instruction; ...

...

else

instruction; instruction; ...

end

end

end

Когда необходим множественный разбор случаев, более удобна инструкция множественного выбора inspect, обсуждаемая ниже.

ОО-метод, благодаря полиморфизму и динамическому связыванию, уменьшает необходимость явных условных инструкций и множественного выбора, поддерживая неявную форму выбора. Когда объект применяет некоторый компонент, имеющий несколько вариантов, то во время выполнения нужный вариант выбирается автоматически в соответствии с типом объекта. Этот неявный стиль выбора обычно предпочтительнее, но, конечно, инструкции явного выбора остаются необходимыми.

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

7.13 Условная Операция

Из книги C++ автора Хилл Мюррей

7.13 Условная Операция условное_выражение: выражение ? выражение : выражениеУсловная операция группирует слева направо. Вычисляется первое выражение, и если оно не 0, то результатом является значение второго выражения, в противном случае значение третьего выражения. Если


11.3 Условная Компиляция

Из книги Справочное руководство по C++ автора Страустрап Бьярн

11.3 Условная Компиляция Командная строка компилятора вида#if выражениепроверяет, является ли результатом вычисления выражения не-ноль. Выражение должно быть константным выражением, котрые обсуждаются в #12. Кроме обычных операций С++ может ипользоваться унарная операция


R.16.5 Условная трансляция

Из книги Язык программирования С# 2005 и платформа .NET 2.0. [3-е издание] автора Троелсен Эндрю

R.16.5 Условная трансляция С помощью препроцессора можно организовать условную трансляцию программы. Синтаксически это задается следующим образом:условное: часть-if части-elif opt часть-else opt строка-endifчасть-if: строка-if текстстрока-if: # if выражение-константа # ifdef


Условная компиляция

Из книги MySQL: руководство профессионала автора Паутов Алексей В

Условная компиляция Другой пакет директив препроцессора (#if, #elif, #else, #endif) позволяет выполнить компиляцию блока программного кода по условию, базируясь на предварительно заданных символах. Классическим вариантом использования этих директив является идентификация блока


5.2.10.1. Инструкция IF

Из книги Технология XSLT автора Валиков Алексей Николаевич

5.2.10.1. Инструкция IF IF search_condition THEN statement_list[ELSEIF search_conditionTHEN statement_list] …[ELSE statement_list]END IFIF реализован как базисная условная конструкция. Если выражение search_condition истинно, соответствующий список инструкции SQL выполнен. Если пары search_condition не нашлось, будет выполнен операторный


5.2.10.7. Инструкция WHILE

Из книги Язык программирования Си для персонального компьютера автора Бочков C. О.

5.2.10.7. Инструкция WHILE [begin_label:]WHILE search_condition DO statement_listEND WHILE[end_label]Операторный список внутри инструкции WHILE повторен, пока search_condition равно true. Инструкция WHILE может быть помечена. Пример:CREATE PROCEDURE dowhile()BEGINDECLARE v1 INT DEFAULT 5;WHILE v1 > 0 DO…SET v1 = v1 – 1;END


Условная обработка

Из книги Linux: Полное руководство автора Колисниченко Денис Николаевич

Условная обработка В XSLT имеются две инструкции, которые поддерживают условную обработку — xsl:if и xsl:choose. Инструкция xsl:if позволяет создавать простые условия типа "если-то", в то время как xsl:choose создает более сложную конструкцию для выбора одной из нескольких имеющихся


Условная операция

Из книги QNX/UNIX [Анатомия параллелизма] автора Цилюрик Олег Иванович

Условная операция В языке Си имеется одна тернарная операция — уловная. Она имеет следующий синтаксис:<операнд1> ? <операнд2>: <операнд3>Выражение <операнд1> вычисляется и сравнивается с нулем. Выражение может иметь целый, плавающий тип, либо быть указателем.


Условная компиляция

Из книги Мир InterBase. Архитектура, администрирование и разработка приложений баз данных в InterBase/FireBird/Yaffil автора Ковязин Алексей Николаевич

Условная компиляция В этом разделе описываются директивы, которые управляют условной компиляцией. Эти директивы позволяют исключить из процесса компиляции какие-либо части исходного файла посредством проверки условий (константных


8.5. Условная подстановка параметров

Из книги C++ для начинающих автора Липпман Стенли

8.5. Условная подстановка параметров Условная подстановка позволяет проверить, установлен ли определенный параметр, или использовать вместо его значения другое. Значение самого параметра при этом не изменяется. Допустимые виды условных подстановок перечислены в


Условная переменная

Из книги автора

Условная переменная Одним из важнейших принципов использования мьютексов является максимальное сокращение размеров критической секции, то есть участка, который потоки должны проходить последовательно. Однако зачастую возникает необходимость ожидания выполнения


5.6. Инструкция while

Из книги автора

5.6. Инструкция while Синтаксис инструкции while следующий:while ( условие )инструкцияПока значением условия является true, инструкция выполняется в такой последовательности:* Вычислить условие.* Выполнить инструкцию, если условие истинно.* Если самое первое вычисление условия