Приглашаем посетить
Майков (maykov.lit-info.ru)

Пример оператора логического "ИЛИ" - (||)

Пример оператора логического "ИЛИ" - (||)

Оператор используется чтобы определить, верно ли какое либо из условий.

Op1
0
1
0
1
Op2
0
0
1
1
Op1||Op2
0
1
1
1

 

В программе ниже проверяется, равна ли переменная $firstVar 9, а переменная secondVar 10. Если хотя бы одно из этих условий истинно (или они оба истинны), то печатается строка "Error!".

if ($firstVar == 9 || $firstVar == 10) {
print("Error!");
}

ВНИМАНИЕ! Если первое условие выполняется (первый операнд равен "истине"), то вычисление второго условия не происходит. Если вы не будете достаточно внимательны, это может быть источником очень трудно вылавливаемых ошибок. Например:

if ($firstVar++ || $secondVar++) { print("\n"); }

если переменная $firstVar равна "истине", то инкремент переменной $secondVar проводиться НЕ будет.

Вы также можете попробовать применить такую конструкцию:

if ($firstVar == (9 || 10)) {
print("Error!");
};


чтобы определить, равна ли переменная $firstVar 9 или 10. Ни в коем случае не делайте этого. Perl в этой ситуации сработает несколько по-другому, - совсем не так, как вы ожидали. Сначала выражение "9||10" будет рассмотрено, как равное 9, а за тем будет произведена проверка на равенство переменной $firstVar 9.

Правильно будет написать так:

if ($firstVar == 9 || $firstVar == 10) {
print("Error!");
};


Никогда не забывайте подобных особенностей языка Perl.

Назад | Оглавление | Далее