Linux E X P R E S

Facebook

Programovanie v jazyku C++: Operátory (1)

cplusplus.png

Doteraz sme si vysvetlili viacero veci napríklad polia, reťazce či cykly. Avšak, neprebrali sme dôležitú oblasť jazyka C++, operátory. V článku som zľahka načrtol, čo sú tie operátory a vysvetlil aritmetické operátory. A nie sú jediným typom operátorov. Predpokladám, že začiatočník by uvítal nejaký súhrn z tejto problematiky.


Terminológia

Tak, čo je ten operátor? Musíme s výkladom o operátoroch začať výrazmi. Nech a * b je výraz. Pojem operand predstavujú vo výraze a * b písmena ab.  Násobenie vo výraze predstavuje operátor. Znak * ako znak násobenia patrí medzi aritmetické operátory, s ktorými ste už mali česť.

Operátory delíme podľa počtu operandov na unárne, binárne a ternálne. Ďalej binárne operátory delíme na aritmetické, relačné, logické a bitové operátory.

Unárne operátory

Unárny operátor je v zápise len s jedným osamoteným operandom. Medzi unárne operátory patria tieto operátory:

++ a --

inkrementácia a dekrementácia hodnoty 

+ a -

aritmetické plus a mínus

&

referencia

*

pointer

!

logická negácia

~

bitová negácia

sizeof

na určovanie dĺžky objektu alebo typu premennej

1. príklad: Ukážka jedného z unárnych operátorov

#include <iostream>  // hlavičkový súbor
 
 using namespace std;  // priestor mien
 
 int main()   // hlavná funkcia main
 {
     int cislo;   // deklarácia čísla
 
     cout << "Zadaj parne cislo!\n";   // výstup na obrazovke
     cin >> cislo;   // vstup
 
     bool jeParne;
 
     if (cislo % 2 != 0)   // podmienky
         jeParne = false;
 
     if (cislo % 2 == 0)
         jeParne = true;
 
     if (jeParne)
         cout << "Spravne, je to parne cislo.\n";
 
     if (!jeParne)  // unárna logická negácia 
         cout << "Zle, velmi zle. Odporucam zacat sa ucit matematiku.\n";
 
     return 0;
 }

Výsledná činnosť programu: 

Zadaj parne cislo!
 11
 Zle, velmi zle. Odporucam zacat sa ucit matematiku.

Rozbor programu: Program je veľmi jednoduchý. Ide len o vstup od užívateľa a rozhodnutie, či číslo je párne alebo nie. Čo som chcel s programom dosiahnuť, je ukázanie logickej negácie pomocou znaku !.

Binárne operátory

Binárne operátory pre svoju „existenciu“ potrebujú dve operandy. Do binárnych operátorov patrí klasické sčítanie, odčítanie, násobenie a delenie. Tieto operátory už boli názorné vysvetlené čiže sa o nich nebudeme zaujímať. Ďalšie typy binárnych operátorov sú logické, binárne a relačné operátory.

Medzi relačné operátory patria: 

< 

menší ako

> 

väčší ako

<=

menši alebo rovný

>=

väčší alebo rovný

==

rovnosť

!=

nerovnosť

Príklad na relačné operátory neuvediem, pretože takmer v každom programe sa vyskytujú. Pevne verím, že relačné operátory do doterajšieho stavu seriálu zvládol každý.

Logické operátory

Spomenieme si dve zaužívané logické operátory, ktoré by ste mali ovládať. 

&&

logický súčin AND

||

logický súčet OR

S logickým súčtom a logickým súčinom môžeme tvoriť komplikovanejšie výrazy. Sú vhodné na nasadenie práve vtedy, ak potrebujeme viacero podmienok vyhodnotiť naraz.

Logický súčin je pravdivý, ak všetky jeho súčastí sú pravdivé. Logický súčet je pravdivý, ak je aspoň jeden z výrokov pravdivý.

Rýchla ukážka:

if (i < 5 || i > 10)   // ak jedna z podmienok platí, tak sa blok podmienky vykoná
if (i > 5 && i < 10) // musia platiť všetky podmienky, inak sa blok podmienky nevykoná

Na záver osviežujúci jednoduchý program na logické operátory. 

2. program:

#include <iostream>
 
 using namespace std;
 
 int main()
 {
     int cislo;
 
     cout << "Zadaj cele cislo v intervale 0-100\n";
     cin >> cislo;
 
     if (cislo < 0 || cislo > 100)   // logický súčin
     {
         cout << "Ehm, nevies ratat do 100?";
         return 0;
     }
 
     if(cislo % 2 == 0)
         cout << "Tvoje cislo je parne";
     else
         cout << "Tvoje cislo nie je parne";
 
     return 0;
 }

Výsledok programu:

Zadaj cele cislo v intervale 0-100
 46
 Tvoje cislo je parne

Rozbor programu: Najväčšie posolstvo programu je ošetrenie vstupu od užívateľa. Použili sme na ošetrenie vstupu logický súčet. Ak je jedná z podmienok pravdivá, uskutoční sa blok podmienky a program skončí.

Diskuze (0) Nahoru