|
Оператор ifОператор if позволяет выполнить некоторый блок инструкций в случае истинности заданного условия. В качестве условия может выступать переменная логического типа или любое выражение, результатом вычисления которого является логическое значение. Блок выполняемых инструкций завершается ключевым словом end. В следующем примере мы отображаем строку "Hello!", если условие %t выполняется. Выражение "%t", как мы знаем, представляет собой константу, обозначающую “истина”, поэтому данное условие всегда истинно и строка будет отображена в любом случае. if ( %t ) then disp("Hello!") end В результате выполнения предыдущего скрипта в консоль будет выведено Hello ! Если условие ложно, выполняется ветвь else, как показано в следующем фрагменте: if ( %f ) then disp("Hello!") else disp("Goodbye!") end В данном случае в консоли появится строка Goodbye! В качестве условия может использоваться любое выражение, результатом вычисления которого является логическое значение, например, использующее операторы сравнения "==", ">" и т.д. или функции, возвращающие логическое значение. В следующем примере мы используем оператор "==" для проверки условия и выводим сообщение "Hello!", если условие истинно, и "Hello!", если оно ложно: i = 2 if ( i == 2 ) then disp("Hello!") else disp("Goodbye!") end Следует подчеркнуть, что для проверки равенства используется оператор "==", а не "=". Использование последнего приводит к предупреждению, как показано в следующем фрагменте: -->i = 2 i = 2. -->if ( i = 2 ) then Warning: obsolete use of '=' instead of j --> disp("Hello!") Hello ! --> else --> disp("Goodbye !" ) --> end При наличии нескольких условий, которые должны быть проверены последовательно, полезным оказывается конструкция elseif. Следующий фрагмент демонстрирует, каким образом конструкция elseif может использоваться для обработки различных значений переменной i: i = 2 if ( i == 1 ) then disp("Hello!") elseif ( i == 2 ) then disp("Goodbye!") elseif ( i == 3 ) then disp("Tchao!") else disp("Аu Revoir!") end Количество блоков elseif не ограничено, что позволяет создавать ветвление произвольной сложности. Однако, большое число следующих друг за другом блоков elseif часто говорит о необходимости использования оператора select, речь о котором пойдет в следующем разделе. |
|
© vse-o-scilab |