Programovanie‎ > ‎Operátory‎ > ‎

Terárne operátory

Terárny alebo označovaný aj ako podmienený operátor je pomerne neobvyklý. Preto bude vhodné, ak si objasníme i jeho jeho význam. Máme napríklad výpočet, ktorý potrebujeme previesť, v závislosti na nejakej podmienke, jednu z dvoch variant (pochopiteľne odlišných). Výsledok výpočtu priraďujeme vždy rovnakej premennej. Pokiaľ naviac je časť výrazu, popisujúca výpočet oboch variant, zhodná, jedná sa o typický príklad využitia podmieneného výrazu.


?  :  terárne operátory (podmienený operátor)

Ak je podmienka pravda, platí vyraz_1, ak nie je, platí vyraz_2. Podmienka aj výrazy môžu byť akokoľvek zložité. Vždy je možné ich rozpísať za pomoci if else.

podmienka ? vyraz_1 : vyraz_2

Operátor ? je jediným operátorom jazyka, spájajúcim tri argumenty. Jeho význam ilustruje nájdenie menšej z dvoch hodnôt x a y zápisom:

z = x < y ? x : y;

ktorý interpretujeme takto: do premennej z ulož hodnotu x, ak je splnená podmienka x < y, inak tam ulož hodnotu premennej y.

Väčšinou sa podmienený výraz nepoužíva, pretože príkaz if - else je oveľa čitateľnejší. V niektorých prípadoch (klasických) je však užitočný, napr. konverziou znaku na malé písmená:

c = (c >= 'A' && c <= 'Z') ? c + ('a' + 'A') : c;

Diskusia a komentáre

Diskusia a komentáre