Читайте также:
|
|
Логические операторы позволяют создавать более сложные условные выражения. Например, если вы хотите проверить, является ли ваша переменная больше 0 но меньше 10, в таком случае вам достаточно воспользоваться логическим оператором — И. Вот так это делается — var > 0 and var < 10. В языке СИ есть точно такой же же оператор, только обозначается он иначе — &&.
При использовании операторов if часто необходимо проверить несколько различных условий, поэтому очень важно понимать логические операторы OR, NOT и AND. Логические операторы работают точно так же как и операторы сравнения: они возвращают 0, если имеют ложное значение или 1, если логическое выражение — истинное.
В С++ существует три логические операции:
Логические операции образуют сложное (составное) условие из нескольких простых (два или более) условий. Эти операции упрощают структуру программного кода в несколько раз. Да, можно обойтись и без них, но тогда количество ифов увеличивается в несколько раз, в зависимости от условия. В следующей таблице кратко охарактеризованы все логические операции в языке программирования С++, для построения логических условий.
Таблица 1 — Логические операции С++ | |||
Операции | Обозначение | Условие | Краткое описание |
И | && | a == 3 &&b > 4 | Составное условие истинно, если истинны оба простых условия |
ИЛИ | || | a == 3 ||b > 4 | Составное условие истинно, если истинно, хотя бы одно из простых условий |
НЕ | ! | !(a == 3) | Условие истинно, если a не равно 3 |
Сейчас следует понять разницу между логической операцией И и логической операцией ИЛИ, чтобы в дальнейшем не путаться. Пришло время познакомиться с типом данных bool –логический тип данных. Данный тип данных может принимать два значения: true (истина) и false (ложь). Проверяемое условие в операторах выбора имеет тип данных bool.
// or_and_not.cpp: определяет точку входа для консольного приложения.
#include "stdafx.h"
#include <iostream>
using namespace std;
int main(int argc, char* argv[])
{
bool a1 = true, a2 = false; // объявление логических переменных
bool a3 = true, a4 = false;
cout << "Tablica istinnosti log operacii &&" << endl;
cout << "true && false: " << (a1 && a2) << endl // логическое И
<< "false && true: " << (a2 && a1) << endl
<< "true && true: " << (a1 && a3) << endl
<< "false && false: " << (a2 && a4) << endl;
cout << "Tablica istinnosti log operacii ||" << endl;
cout << "true || false: " << (a1 || a2) << endl // логическое ИЛИ
<< "false || true: " << (a2 || a1) << endl
<< "true || true: " << (a1 || a3) << endl
<< "false || false: " << (a2 || a4) << endl;
cout << "Tablica istinnosti log operacii!" << endl;
cout << "!true: " << (! a1) << endl // логическое НЕ
<< "!false: "<< (! a2) << endl;
system("pause");
return 0;
}
Строки 9 и 10 вам должны быть понятны, так как здесь инициализируются переменные типа bool. Причем каждой переменной присваивается значение true или false. Начиная с 9-й строки и заканчивая 20-й, показано использование логических операций. Результат работы программы (см. Рисунок 1).
Рисунок 1 — Логические операции С++
CppStudio.com
Tablica istinnosti log operacii &&
true && false: 0
false && true: 0
true && true: 1
false && false: 0
Tablica istinnosti log operacii ||
true || false: 1
false || true: 1
true || true: 1
false || false: 0
Tablica istinnosti log operacii!
!true: 0
!false: 1
Для продолжения нажмите любую клавишу...
Наверное, у вас возникает вопрос, «А что это за нолики и единички?». Если есть вопрос, то на него нужно ответить. Отвечаю: «Нолик-это представление логического значения false (ложь), ну а единички – это логическое true(истина)». Коротко поясню некоторые моменты. Составное условие с использованием логического И истинно только в том случае, когда истинны оба простых условия. Во всех остальных случаях составное условие ложно. Составное условие с использованием логического ИЛИ ложно только в том случае, когда ложные оба простых условия. Во всех остальных случаях составное условие истинно. Логическое отрицание НЕ является унарной операцией, и она не комбинирует два условия, в отличие от логических операций И и ИЛИ, которые являются бинарными операциями. Логическое отрицание позволяет перевернуть смысл условия, что в некоторых случаях очень удобно. Условие с логическим отрицанием истинно в том случае, если это же условие ложно без отрицания, и наоборот.
#
Дата добавления: 2015-02-16; просмотров: 150 | Поможем написать вашу работу | Нарушение авторских прав |