Operatori aritmetici
Operatorii aritmetici binari sint "+", "-", "*", "/" si operatorul
modulo "%". Exista operatorul "-" unar dar nu exista opera-
torul unar "+". Impartirea intregilor trunchiaza orice parte frac-
tionara. Expresia
x % y
produce restul cind x se imparte la y si deci este zero cind
impartirea este exacta. De exemplu, un an este bisect daca este
divizibil cu 4 si daca nu este divizibil cu 100, insa anii divizi-
bili cu 400 sint bisecti. Deci
if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0)
it's a leap year
else
it's not
Operatorul % nu poate fi aplicat la float sau double.
Operatorii + si - au aceeasi pondere, care este mai mica
decit ponderea (identica) a lui *, / si % care la rindul ei
este mai mica decit ponderea operatorului unar -. Operatorii
aritmetici se grupeaza de la stinga la dreapta (Tabela de la
sfirsitul capitolului rezuma ponderea si asociativitatea pentru
toti operatorii). Ordinea de evaluare nu este specificata
pentru operatorii asociativi si comutativi de tipul lui * si +.
Compilatorul poate rearanja un calcul cu paranteze implicind
unul din acestia. Astfel, a+(b+c) poaate fi evaluat ca (a+b)+c.
Acest lucru produce rar diferente dar daca se cere o ordine parti-
culara, trebuie folosite explicit variabilele temporare.
Actiunile care produc depasiri superioare sau inferioare
depind in ultima instanta de calculator.