Операторы сравнения в ThinkScript

Операторы сравнения, как видно из названия, должны что-то сравнивать. Так и есть, они сравнивают левую часть с правой, а между ними расположен оператор. В итоге возвращается логическое значение истина или ложь. Если условие выполняется, тогда возвращается 1, если нет 0.

Операторы сравнения:

« < » — Меньше.

« <= » — Меньше или равно.

« > » — Больше.

« >= » — Больше или равно.

« == » — Равно.

« != » — Не равно

«<>» — Не равно.

Начнем по порядку.

Меньше – условие выполняется, если левая часть меньше правой.

Переменная name примет значение 1, так как 10 меньше 20.

Переменная name примет значение 0, так как 30 не меньше 10.

Аналогично и с оператором больше.

Теперь Меньше или равно. В чем отличие от просто Меньше. Два примера ниже.

Переменная name1 примет значение 0, так как 10 не меньше 10. Переменная name2 примет значение 1, так как 10 не меньше 10, но 10 равно 10. Думаю отличия понятны, для Больше или равно аналогично.

Далее идет равно, как видите тут 2 знака равно идут подряд, именно этим и отличается оператор сравнения, от оператора присваивания. В этом случае вернется значение 1, только в том случае, если левая и правая часть равны.

Переменная name примет значение 1, так как 10 равно 10, во всех остальных случаях, будет 0.

Ну и последнее что осталось – это Не равно. Тут наоборот, вернется 1, если левая часть не равна правой, а вот если равны, то вернет 0.

Переменная name1 будет 0, так как 10 равно 10.

Переменная name2 это аналогично, просто знак неравно написан иначе. Отличий в этом нет ни каких, кому что удобно тот то и может использовать. В некоторых языках программирования можно использовать только знак <> и нет возможности использовать знак !=, а в других языках наоборот. В thinkScript допускается использовать оба знака. Из своего опыта программирования мне удобнее использовать знак !=, так как в тех языках что я программирую именно это обозначается чаще.

Переменная name3 – значение 1, так как 10 не равно 20.

Переменная name4 – так же значение 1, так как 10 не равно 50, только использован другой символ.

И самое последнее что затрону в этой части, так это оператор инвертирования. Что это такое, превращение 1 в 0 или наоборот. Предположим у нас функция вернула 1, а мы хотим что бы она вернула 0, тут мы используем инвертирование.

Коротко о функции isNaN – она возвращает 1, если принятое значение не является числом. И возвращает 0, если значение является числом. Но к примеру нам нужно проверить наоборот, если принятое значение является числом мы хотим получить 1, иначе 0. Используем инвертирование, установим восклицательный знак перед функцией.

Вот теперь проследим какое значение примет переменная name2. Для начала выполнится функция isNaN, проверит переменную name1, 10 не является числом? – Нет, 10 это число, а функция возвращает 1 только когда не является числом, значит функция вернет 0. Далее произойдет инвертирование и 0 превратиться в 1 и уже 1 будет присвоена в переменную name2.

На этом все. Запоминаем все что написано, а потом, когда будете писать свой код, применение само придет, если сейчас вы пока не знаете, когда можно использовать все это. С опытом все будет использовано, чем больше вы будете знать, тем короче и проще будут ваши индикаторы.

Постоянная ссылка на это сообщение: https://k-pavel.ru/operatory-sravnenija-v-thinkscript/

avatar

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.

  Subscribe  
Подписаться на