Тип bool и логические выражения

Тип bool и логические выражения

Сегодня мы узнаем с вами еще об одном типе данных, который есть в C++. И по названию темы вы уже поняли, что речь пойдет о типе bool.

Логические выражения – это та самая тема, которая аккуратно приближает нас к изучению условных операторов. Но пока это очень маленький шажок, который может показаться для кого-то довольно сложным.

Для того чтобы понять, что такое логические выражения, нам придется ввести две – три новых сущности. И первой из них будет новый тип данных.

Bool – это сокращение от boolean, по-английски – логический. Происхождение этого слова интересное, был такой человек, как Джордж Буль, который предложил Алгебру логики или Булеву алгебру. Собственно она и стала некой основой в языках программирования. Зная Алгебру логики, вам будет намного проще.

В этом уроке мы рассмотрим с вами некоторые ее базовые аспекты, которые чаще всего используются в программировании.

Кроме этого, особенность типа данных bool заключается в том, что он может принимать всего лишь два значения:

  1. true – истина;
  2. false – ложь.

Также можно провести аналогию:

  1. true = 1;
  2. false = 0.

Например, номер этого занятия 3, вы скажете не правда, т.е. false. А если я скажу, что мы изучаем C++, вы со мною согласитесь, т.е. true.

Сколько памяти выделяется под тип bool?

C++ выделяет минимум 1 байт на переменную, поэтому тип bool будет занимать у нас всегда именно эту величину. Вне зависимости от значений (true или false).

Что такое логическое выражение?

Логическое выражение – это некоторая конструкция языка C++, результат вычисления которой будет 1 или 0 (true или false).

Из чего состоит логическое выражение

Логические выражения состоят из трех частей.

  1. Под цифрами 1 и 3 скрываются те самые числа, переменные или выражения, которые мы уже привыкли использовать в наших программах.
  2. Под цифрой два мы понимаем сравнение тех самых первой и третей частей.

Например, 0 больше 1.

Операции сравнения

В языке C++, как и в любом другом си подобном языке 6:

  1. «>» – Больше;
  2. «<» - Меньше;
  3. «>=» – Больше или равно;
  4. «<=» - Меньше или равно;
  5. «==» – Равно (проверка на равенство);
  6. «!=» – Неравно (проверка на неравенство).

Давайте рассмотрим на примерах. Так будет наглядней. Результатом этих операций будет ответ, истина это или ложь.

  1. Фон области программирования белый
    color == white – истина (true или 1);
  2. В прошлом домашнем задании было 2 задачи
    hw_task == 2 – истина (true или 1);
  3. Прочтение данного урока займет более 60 минут
    read_time_lesson > 60 – ложь (false или 0);
  4. В данном уроке меньше 1000 символов текста
    text_lesson_symbol < 1000 - ложь (false или 0);
  5. Переменная а – положительная
    a > 0;
  6. Переменная а делится на 5 нацело
    a % 5 == 0;
  7. Переменная а – четная
    a % 2 == 0;
  8. Переменная а – нечетная
    a % 2 != 0;

В каждом примере, мы сравниваем нашу переменную с числовым значением. В результате получаем 0 или 1 (false или true).

Сложные логические выражения

Сложные логические выражения

Что подразумевается под сложными выражениями? Это подразумевает в себе, что мы сравниваем уже не просто числа, переменные или арифметические выражения, а несколько логических выражений между собой.

Для чего они нам могут понадобиться?

Проще будет рассказать на примере. Вы заходите в интернет магазин и начинаете поиск товара, объединяя между собой несколько фильтров. Цена товара от 5.000 до 10.000 рублей, цвет белый. В результате вы увидите все товары стоимостью от 5.000 до 10.000 рублей белого цвета.

Это как раз и будет сложное логическое выражение.

Код выражения:

((price >= 5000) && (price <= 10000)) && color == white;

Логические операции

  1. && - логическое «И». Результат истинный, если оба операнда истинны;
  2. || - логическое «ИЛИ». Результат истинный, если хоть один из операндов истинен;
  3. ! – логическое «НЕ». Результат всегда противоположен операнду.

Таблица истинности логических выражений

Таблица истинности логических выражений

Решение задач

Проверка на четность числа

С клавиатуры вводится целое число n. Требуется проверить, является ли оно чётным или нет.
Формат входных данных
В единственной строке вводится целое число n (∣n∣ <= 109).
Формат выходных данных
Выведите «1», если число является чётным, и «0», если нечётным.

решение задачи проверка на четность

Проверка на нечетность числа

С клавиатуры вводится целое число n. Требуется проверить, является ли оно нечётным или нет.
Формат входных данных
В единственной строке вводится целое число n (∣n∣ <= 109).
Формат выходных данных
Выведите «1», если число является нечётным, и «0», если чётным.

решение задачи проверка на нечетность

Три нечетных

Даны три числа a, b и c. Требуется проверить, что все три числа являются нечётными.
Формат входных данных
С клавиатуры вводятся три целых числа a, b и c, которые по модулю не превосходят 109.
Формат выходных данных
На экран нужно вывести 1, если все три числа нечётные, и 0, если хотя бы одно из них чётное.

решение задачи три нечетных

Попадание в прямоугольник

Дана точка с координатами x и y.
График
Проверьте, находится ли она внутри прямоугольника, который образован точками с координатами (1, 7), (4, 7), (4, 2), (1, 2).

Формат входных данных
Даны два целых числа x и y (−10 <= x, y <= 10).
Формат выходных данных
Требуется вывести 1, если точка находится внутри прямоугольника, и 0, если снаружи или на границе.

решение задачи попадание в прямоугольник

Видео по теме урока

Поделиться:
Нет комментариев

Leave a Reply

×
Рекомендуем посмотреть