Логические операторы. Часть 2
Часть раздела Основы путешествия по C++ на Coddy — урок 24 из 74.
Логические операторы имеют специальную таблицу, называемую «Таблица истинности», которая показывает, что возвращает комбинация логических операторов.
Таблица истинности для оператора and (&&):
| a | b | a && b |
|---|---|---|
| false | false | false |
| false | true | false |
| true | false | false |
| true | true | true |
Единственный способ получить true для оператора and (&&) — это если и a, и b имеют значение true
Таблица истинности для оператора or (||):
| a | b | a || b |
|---|---|---|
| false | false | false |
| false | true | true |
| true | false | true |
| true | true | true |
В этом случае, чтобы получить результат true, либо a, либо b должен быть true.
Таблица истинности для оператора not (!):
| a | !a |
|---|---|
| false | true |
| true | false |
Здесь значение a инвертируется. Если a равно false, то !a равно true
Задание
НовичокВам нужно присвоить целые значения переменным b1 и b2, чтобы b3 приняло значение true в выражении: bool b3 = !((b1 + b2) > (b1 * b2)).
Уделите время анализу условия и подумайте, какие значения сделают его истинным.
Шпаргалка
Таблицы истинности показывают результаты комбинаций логических операторов:
Оператор AND (&&): Возвращает true только тогда, когда оба операнда равны true
| a | b | a && b |
|---|---|---|
| false | false | false |
| false | true | false |
| true | false | false |
| true | true | true |
Оператор OR (||): Возвращает true, если хотя бы один из операндов равен true
| a | b | a || b |
|---|---|---|
| false | false | false |
| false | true | true |
| true | false | true |
| true | true | true |
Оператор NOT (!): Инвертирует логическое значение
| a | !a |
|---|---|
| false | true |
| true | false |
Попробуйте сами
#include <iostream>
using namespace std;
int main() {
// Введите ваш код ниже
int b1 = ?;
int b2 = ?;
bool b3 = !((b1 + b2) > (b1 * b2));
// Не изменяйте строку ниже
cout << "b3 = " << b3 << endl;
return 0;
}В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
4Операторы. Часть 1
Арифметические операторыОператор остатка от деленияИнкремент и декрементПостфиксный инкремент и декрементСокращенные арифметические операцииОператоры сравненияСравнение строк7Основы ввода-вывода
Оператор coutОператор cinВвод строкПовторение — До 120Повторение — Истина или ложь5Операторы. Часть 2
Логические операторы. Часть 1Логические операторы. Часть 2Повторение — простая логикаЛогические операторы. Часть 33Переменные. Часть 2
Объявление типовСоглашения об именованииПовторение: инициализация переменныхПриведение типов. Часть 1Приведение типов. Часть 26Принятие решений
Оператор ifКонструкция if - elseОператор switchУсловный операторПовторение: if - elseВложенный if - else