Relačné operátory a výrazy
Relačné (alebo tiež porovnávacie) výrazy sa využívajú pri vytváraní rozhodovacích
podmienok v podmienených príkazoch a v cykloch. Jazyk C++ poskytuje nasledovných 6 relačných
operátorov:
>
je väčší než
>=
je väčší rovný než
<
je menší než
<=
je menší rovný než
==
je rovný
!=
nie je rovný
Vyhodnotením relačného výrazu sa získa logická pravda - true alebo logická nepravda false.
Operandami relačných výrazov sú aritmetické výrazy, pričom aritmetické výrazy majú vyššiu prioritu.
Príklady relačných výrazov:
a + 3 > b – 10
//to isté ako (a + 3) > (b – 10)
cislo1 = = cislo2
//pozor na zápis cislo1 = cislo2 – ide o priradenie, častá chyba
//začiatočníkov v C++
x >= y + sqrt(z+y)
znak <= ‘Z‘
retazec.length() != 100
Logické operátory a výrazy
Logické výrazy sa, podobne ako relačné výrazy, využívajú pri vytváraní rozhodovacích
podmienok v podmienených príkazoch a v cykloch. Umožňujú vytvárať zložitejšie rozhodovacie
podmienky. Jazyk C++ poskytuje nasledovné 3 logické operátory:
or
logický operátor alebo
je možné použiť aj ||
and
logický operátor a
je možné použiť aj &&
not
logický operátor nie
je možné použiť aj !
Vyhodnotením logického výrazu sa získa logická pravda - true alebo logická nepravda false.
Operandami logických výrazov sú relačné výrazy, pričom relačné výrazy majú vyššiu prioritu. Výnimku
tvorí operátor not, ktorý má vyššiu prioritu než všetky relačné a aritmetické operátory. Ak teda chceme
nejaký výraz znegovať, treba ho uzatvoriť do zátvoriek.
Operátor or
Logický výraz s operátorom or vráti hodnotu true, ak aspoň jeden z relačných výrazov je
pravdivý. Predpokladajme, že v príkladoch logických výrazov majú premenné priradené nasledovné
hodnoty: a=10; b=15; c=25. Potom:
a > b or c > b
//true, lebo c > b
a + b >= c or b= =c
//true, lebo a+b>=c
b < a or c < a
//false, lebo oba relačné výrazy sú nepravdivé
c >= b – a or b > a
//true, lebo oba relačné výrazy sú pravdivé
Operátor and
Logický výraz s operátorom and vráti hodnotu true iba vtedy, ak oba relačné výrazy sú
pravdivé. Inak vráti hodnotu false. Príklady:
b >= a and b <= c
//true, lebo oba relačné výrazy sú pravdivé
a >= c and b <=c
//false, lebo jeden z relačných výrazov je nepravdivý
!( a >= c) and b <=c
//true
Operátor not
Logický operátor not neguje pravdivostnú hodnotu výrazu. Príklady:
not(a= =b)
//true, lebo a= = b je false
not(a<c)
//false, lebo a<c je true
Download

Relačné operátory a výrazy Logické operátory a výrazy