Опрос
Что такое, по вашему мнению, «демократия»?
Логические значения
| Индекс материала |
|---|
| Логические значения |
| Страница 2 |
Прежде чем перейти к изучению операторов логики и отношений, важно понять, что же такое логическое значение. Логические (булевы) переменные могут пребывать в одном из двух состояний: true (истина) или false (ложь). Поэтому они применяются для составления сравнений. Если нечто, как удалось определить, равно true, вы можете выполнить то или иное действие.
Аналогично, вы можете выполнить действие, если нечто будет равно false. В MEL логические значения, на самом деле, хранятся как значения типа int. Целочисленные значения констант true и false соответственно равны 1 и 0. Это демонстрируют следующие операторы: $а = true; $b = false; print ($a + ", " + $b); Результат: 1, о Вместо true могут использоваться дополнительные ключевые слова yes и on. Подобным образом, вместо false могут использоваться ключевые слова по и o f f . Полный список логических значений приведен в табл.
3.2. Так как константа true имеет целочисленное значение 1. то любое целое, не равное 0, трактуется как истина в логическом смысле. Это демонстрирует следующий пример, int $a = 5; if( $a ) print "a is true" // "а есть истинаРезультат: a is true Коль скоро любое целое, отличное от 0, считается истинным, то важно проявлять осторожность при выполнении сравнений с константой true, имеющей значение 1. int $а = 3; if ( $а ) print 'a is true' // Не выполняется, так как сравнение принимает вид 3 == 1, что ложно if( $a == true ) print "a is trueОператоры отношений Очень распространенной задачей программирования является сравнение двух переменных. К примеру, вы хотите выполнить некое действие, если расстояние до объекта превышает известное предельное значение.
В виде псевдокода это можно описать так: если расстояние больше чем предел то выполнить действие конец На языке MEL это можно записать следующим образом: if( {distance > $limit ) action(); Если оператор в составе i f ( . . . ) является истинным, то оператор, записанный ниже, будет выполнен. Если же оператор в i f ( . . . ) окажется ложным, то следующий оператор будет пропущен. Таким образом, if позволяет вам выполнить одно действие, если оператор сравнения возвращает true, и другое действие, если оператор сравнения возвращает false.
Это продемонстрировано на примере: int $a = 10; if( $a == 10 ) print "a is 10"; // "а равно 10else print "a is not 10"; // "а не равно 10Оператор, следующий за предложением else, выполняется в том случае, когда сравнение оказывается ложным. Если действие включает в себя более одного оператора, его следует заключать в скобки ({, }). Таким образом, операторы объединяются в один логический блок. Следующий код иллюстрирует сказанное. int $a = 10; if( $a == 10 ) { print "a is 10"; int $b = $а * 2; > else print "a is not 10"; Операторы if также могут вкладываться друг в друга.
Поиск
В закладку
Авторизация
Погода


