6.2.10 Логические операции AND , OR , NOT в ветвлениях При решении многих задач возникает ситуация, когда требуется проверить некоторое условие и в зависимости от результатов проверки произвести те или иные действия. При составлении условий в PASCAL используются следующие операции сравнения 1.Операции сравнения № Запись операции 1 = 2 <> 3 Действие Пример Проверка на РАВЕНСТВО IF X=200 then Проверка на НЕРАВЕНСТВО IF A <> 0 then > БОЛЬШЕ IF X > 10 then 4 < МЕНЬШЕ IF Y < 0 then 5 >= Больше Равно IF X >= 1 then 6 <= Меньше Равно IF Y <= 0 then 2. Логические константы true , false Если условие выполняется, то результатом проверки будет истина. Если условие не выполняется, то результатом проверки будет ложь. Например, результатом проверки условия 4 > 3 будет ИСТИНА А 4<3 ЛОЖЬ Для обозначения результатов проверки условий в PASCAL используются специальные логические константы : TRUE (истина) FALSE (ложь) Если вывести результат проверки на экран, то будет выведено либо TRUE, либо FALSE Например , writeln( 4> 3); - выведет на экран TRUE а writeln(4< 3); FALSE 3. ЛОГИЧЕСКОЕ УМНОЖЕНИЕ - AND Над логическими значениями TRUE и FALSE можно выполнять логические операции: 1) AND - логическое умножение 2) OR - логическое сложение 3) NOT - Отрицание Результатом этих операций будет такая же логическая константа - true или false Логическое произведение будет истинным(true), если истинны оба сомножителя (true ) AND ( true ) = true writeln( (4>3) and (5>4) ) - результат true если хотя бы один из сомножителей false, то и произведение - false 4. ЛОГИЧЕСКОЕ СЛОЖЕНИЕ - OR Логическая сумма будет ложной (false), если ложны оба слагаемых (false ) OR ( false ) = false writeln( (4<3) or (5<4) ) - результат false если хотя бы одно из слагаемых true, то и сумма - true 5. ЛОГИЧЕСКОЕ ОТРИЦАНИЕ - NOT Преобразует истину в ложь и наоборот. NOT (false) = true NOT (true) = false Writeln ( NOT (5>3) ) - результат false Writeln ( NOT (5<3) ) - результат true 6. Логические выражения С помощью 3-х операций AND,OR,NOT – можно составлять сложные выражения (5>3) AND (4>3) OR (3<2) AND (2>0) Порядок выполнения логических операций в выражениях: 1) сначала NOT(отрицание) 2) затем AND(умножение) 3) в последнюю очередь - OR(сложение) 4) скобки меняют порядок действий простые условия в скобки брать обязательно!!! (5>3) AND (4>3) OR (3<2) AND (2>0) = (true) and (true) or (false) and (true) = (true) or (false) = true Поэтому Writeln( (5>3) AND (4>3) OR (3<2) AND (2>0) ) - результат true 7. Логические операции AND , OR в ветвлениях Операции AND , OR используются в ветвлениях, когда в одной команде IF нужно проверить сразу несколько условий. С помощью AND связывают 2 и более простых условия, если все они должны выполняться одновременно. Пример : необходимо проверить попадание значения переменной в интервал значений -1 +1 1 X 1 IF ( x>=-1) AND (x<=1) then С помощью OR связывают 2 и более простых условия, если должно выполняться хотя бы одно из этих условий. Пример : необходимо проверить попадание значения переменной вне интервала значений -1 +1 1 X 1 IF ( x<=-1) OR (x>=1) then