Почему проверка неравенства одной переменной по многим значениям всегда возвращает true?
У меня есть переменнаяv
в моей программе, и это может занятьлюбо значение из набора значений
"a", "b", "c", ..., "z"
И моя цель - выполнить какое-то утверждение только тогда, когдаv
не является"x"
, "y"
, или"z"
.
Я пытался
для C-подобных языков (где операторы равенства сравнивают Фактической строковые значения; например. C #, Javascript, PHP)
if (v != "x" || v != "y" || v != "z")
{
// the statements I want to be executed
// if v is neither "x", nor "y", nor "z"
}
для языков, подобных Паскалю (например, PLSQL)
IF (v != 'x' OR v != 'y' OR v != 'z') THEN
-- the statements I want to be executed
-- if v is neither "x", nor "y", nor "z"
END IF;
Заявления внутри условия if всегда исполняйся. Я что-то не так делаю?