КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Операції відношення
Операції відношення (< (менше), <= (менше або дорівнює), > (більше), >= (більше або дорівнює), ==(дорівнює), != (не дорівнює)) порівнюють перший операнд з другим. Операнди можуть бути арифметичного типу або вказівками. Результатом операції є значення true (1 – істина) або false (0 – неправда) (будь-яке значення, не рівне нулю, інтерпретується як true). Операції порівняння на рівність і нерівність мають менший пріоритет, ніж решта операцій порівняння.
cout << (2 == 2 == 2); // 0 - неправда cout << (2 < 3); // 1 - істина
Розглянемо використання оператору if. Оператор if
Синтаксис:
if ( <вираз> ) { блок з одного або більш операторів }
Якщо після if стоїть 1 оператор, фігурні дужки можна не ставити.
Оператор if ...else
Синтаксис:
if ( <вираз> ) { блок з одного або більш операторів } Else { блок з одного або більш операторів С++ }
if (Х > 0) Y = X * X; else Y = 2 * X;
Логічні операції Логічні операції:
Amp;& – I АБО НЕ
Операнди логічних операцій І (&&) та АБО (||) можуть мати арифметичний тип або бути вказівками, при цьому операнди в кожній операції можуть бути різних типів. Перетворення типів не виконується, кожен операнд оцінюється з точки зору його еквівалентності нулю (операнд, рівний нулю, розглядається як false, не рівний нулю, – як true). Результатом логічної операції є true (1) або false (0). Результат операції логічне І має значення true тільки тоді якщо обидва операнди мають значення true. Результат операції логічне АБО має значення true, якщо хоча б один з операндів має значення true. Логічні операції виконуються зліва направо. Якщо значення першого операнда досить, щоб визначити результат операції, другий операнд не обчислюється. Такий засіб називається усіканням. if ( a > b || c > d || e > f ) – переривається, як тільки обчислюється, що a > b, або c > d. Логічне заперечення (!) дає в результаті значення 0 (false), якщо операнд є істиною (не нуль), та значення 1 (true), якщо операнд рівний нулю. !( var1 = = var2 ) – те ж саме var1 ! = var2 Пріоритетність операцій: - арифметичні операції; - операції відношення; - логічні операції.
Усікання може бути використане для коректного обчислення. Наприклад: if ( b ! = 0 && a / b > 12.4 ) - коректно, ділення на нуль не буде. Якщо записати if (a / b > 12.4 && b ! = 0 ) – небезпечно, може бути ділення на нуль. Логічні вирази повертають значення типу bool. Будь-яке ненульове значення розглядається як істина.
|