Informatiile acestui spatiu sunt gratuite. Observatii si sugestii pot fi trimise pe adresa de contact sau pe forum.

     Operatori si operanzi in C++

In cadrul operatiilor effectuate in cadrul programelor, avem de-a face cu:

  • operatorii - simboluri care indica operatia ce urmeaza a fi efectuata: adunare(+), scadere(-), inmultire (*), impartire (/) etc.
  • operanzii - variabilele sau valorile utilizate in cadrul operatiilor.

Operatorii pot fi de trei feluri:

  • unari - necesita un singur operand
  • binari - necesita doi operanzi
  • ternari - neceseita trei operanzi

O expresie reprezinta o combinatie intre mai multi operanzi si operatori, aceasta avand, ca si operanzii, un anumit tip, in functie de combinatia de operatorsi folositi.

     Operatori aritmetici unari

Operator Explicatii Exemple
++ (Post/Pre)Incrementare - aduna valoarea 1 la valoarea operandului i++ sau ++i
-- (Post/Pre)Decrementare - scade valoarea 1 de la valoarea operandului i-- sau --i
- Minus unar -i

Explicatii pre/post incrementare/decrementare:

  • y=++x este echivalent cu:
    x=x+1;
    y=x;
  • y=x++ este echivalent cu:
    y=x;
    x=x+1;
  • y=--x este echivalent cu:
    x=x-1;
    y=x;
  • =x-- este echivalent cu:
    y=x;
    x=x-1;

     Operatori aritmetici binari

Operator Explicatii Exemple
+ Adunarea a doi operanzi x+y
- Scaderea a doi operanzi x-y
* Inmultirea a doi operanzi x*y
/ Impartirea a doi operanzi x/y
% Modulo – are ca rezultat restul impartirii a doi operanzi (se aplica doar operanzilor de tip intreg/char) x%y

Observatii

  • Daca in cadrul utilizarii unnui operato binar folosim operanzi de tip intreg, rezultatul va fi tot un numar intreg, chiar daca rezultatul mathematic poate fi de alt tip (real). De exemplu dacafacem impartirea x/y unde x si y sunt numere intregi (3/2), rezultatul va fi partea intreaga din raportul matematic (1).
  • Operatorii aritmetici binari pot fi combinati cu operatorul de atribuire (=):
Operator Explicatii Exemple
+= La operandul din stnga se aduna operandul din dreapta x=x+y
-= Din operandul din stnga se scade operandul din dreapta x=x-y
*= La operandul din stnga se inmulteste operandul din dreapta x=x*y
/= Operandul din stnga se imparte la operandul din dreapta x=x/y
%= La operandul din stnga se aduna operandul din dreapta ?????????????? x=x%y

     Operatori relationali binari

Operator Explicatii Exemple
< mai mic decat x
> mai mare decat x>y
<= mai mic sau egal decat x<=y
>= mai mare sau egal decat x>-y
!= diferit de x!=y
== egal cu x==y

     Operatori logici pe cuvant

Operator Explicatii Exemple
! Negatie logica !x
&& SI logic (xb)
|| SAU logic (xb)


Negare SI logic SAU logic
  op   !
0 1
1 0
op_1 op_2 &&
0 0 0
0 1 0
1 0 0
1 1 1
op_1 op_2 ||
0 0 0
0 1 1
1 0 1
1 1 1

     Operatorul conditional (?)

Este un operator care are in componenta 3 operanzi, avand forma generala urmatoare:

    expresie_1 ? expresie_2 : expresie_3

Interpretare:

  •     se evalueaza expresie_1.
  •     daca aceasta este adevarata,
            se executa expresie_2,
        altfel
            se executa expresie_3.