1. Булева логіка

У мові Java не можна записати вираз 18 < age < 65 — він буде синтаксично некоректним, і програма не скомпілюється.

Натомість можна записати його так:

(18 < age) І (age < 65)

Звичайно, замість сполучника І там буде інший логічний оператор, і зараз ми якраз поговоримо про це докладніше.

У Java є три логічних оператори: AND (і), OR (або) і NOT (не).

Добра новина: за допомогою дужок можна побудувати логічні вирази будь-якої складності.

Погана новина: розробники Java вирішили замість слів and, or та not використовувати позначення з мови C.

Увага на екран!

Логічний оператор Очікування Реальність
І (∧) and &&
АБО (∨) or ||
НЕ (¬) not !

Ось кілька прикладів використання логічних операторів у Java:

Вираз Розшифровка Пояснення
(0 < a) && (a < 100)
(0 < a) and (a < 100)
(0 < a) І (a < 100)
(!a) && (!b)
(not a) and (not b)
(НЕ a) І (НЕ b)
!(!a || !b)
not((not a) or (not b))
НЕ((НЕ a) АБО (НЕ b))

6
Задача
Модуль 1. Java Syntax,  4 рівень3 лекція
Недоступна
Трикутник
Напишемо програму, яка буде прораховувати можливість існування трикутника, виходячи з довжин його сторін. Для цього тобі потрібно: Ввести з клавіатури три числа — довжини сторін передбачуваного трикутника. Визначити можливість існування трикутника з даними сторонами.Результат вивести на екран у

2. Приклади використання операторів порівняння та булевих змінних

Там, де можна написати логічний вираз, можна написати й логічну змінну.

Наприклад:

Код Пояснення
int age = 35;
if (age >= 18 && age <= 65)
   System.out.println("Ви можете працювати");
Якщо значення age лежить у межах від 18 до 65, на екран виводиться текст «Ви можете працювати».
int age = 35;
boolean isYoung = (age < 18);
if (!isYoung && age <= 65)
   System.out.println("Ви можете працювати");
Ми створили змінну isYoung і винесли в неї першу частину виразу. Тільки замінили age >= 18 на age < 18.
int age = 35;
boolean isYoung = (age < 18);
boolean isOld = (age > 65);
if (!isYoung && !isOld)
   System.out.println("Ви можете працювати");
Ми створили змінну isOld і винесли в неї другу частину виразу. Тут замінили age <= 65 на age > 65.

Ці три приклади еквівалентні. Тільки в другому ми винесли частину виразу з умови if в окрему логічну змінну — isYoung. У третьому прикладі ми винесли другу частину виразу в другу змінну — isOld.


2
Задача
Модуль 1. Java Syntax,  4 рівень3 лекція
Недоступна
Працювати чи не працювати — отаке питання
Напишемо програму, яка буде зчитувати з клавіатури вік. Якщо вік від 20 до 60 (включно), то виводити нічого не потрібно, інакше — вивести фразу «можна не працювати». Зробити це можна (і потрібно!) за допомогою лише одного оператора if без else. Підказка: використовуй логічний оператор "||" (або

3. Логічна арифметика

Побіжно переглянемо логічні операції.

Оператор AND, він же І, він же &&, він же кон'юнкція.

Вираз Результат
true && true
true
true && false
false
false && true
false
false && false
false

Інакше кажучи, результат виразу дорівнює true (істина), тільки якщо обидва значення, присутні у виразі, дорівнюють true (істина). У решті випадків завжди false (хибність).

Оператор OR, він же АБО, він же ||, він же диз'юнкція.

Вираз Результат
true || true
true
true || false
true
false || true
true
false || false
false

Інакше кажучи, результат виразу дорівнює true (істина) завжди, коли принаймні одне з присутніх у виразі значень дорівнює true (істина). Якщо обидва значення дорівнюють false, то результатом буде false.

Оператор NOT, він же НЕ, він же !, він же заперечення.

Вираз Результат
!true
false
!false
true

Змінює true на false і навпаки.

Корисні вирази:

Вираз Результат
m && !m
false
m || !m
true
!(a && b)
!a || !b
!(a || b)
!a && !b

2
Задача
Модуль 1. Java Syntax,  4 рівень3 лекція
Недоступна
Координатні чверті
Ввести з клавіатури два цілих числа, які будуть координатами точки (перше зчитане число — це координата «x», а друге — координата «y»). Відомо, що точка не лежить на координатних осях OX і OY. Вивести на екран номер координатної чверті, в якій знаходиться ця точка. Підказка: Належність точ