prof. Nunzio Brugaletta Programmazione e linguaggio C

EnneBi - Programmazione
Avanti Indietro Inizio


2.6 Incrementare una variabile

Ogni nuova assegnazione ad una variabile, distrugge un valore precedentemente contenuto nella variabile stessa. Per cui, nel successivo esempio:

 ...
 voto = 3;
 ...
 voto = 6;

la variabile voto varrà 6. E ciò qualunque sia stato il valore precedente.

Per aggiungere uno al valore contenuto in una variabile si deve assegnare alla variabile il valore precedente più uno. Ad esempio, questa istruzione aggiunge uno al contenuto della variabile n:

n = n+1;

Difatti il C calcola per prima cosa il valore dell'espressione posta a destra del segno di uguale, cioè n+1. Se ad esempio n vale 5, n+1 vale 6. Questo valore viene poi assegnato alla variabile indicata a sinistra, cioè alla stessa n. Quindi n, che prima valeva 5, dopo l'esecuzione dell'istruzione vale 6.

Questo si chiama incrementare una variabile, cioè appunto aggiungere un nuovo valore al valore precedente (nel caso esaminato si aggiunge 1). L'operazione opposta (togliere, per esempio, 1 al valore della variabile) è chiamata decrementare la variabile. Ovviamente si può usare lo stesso sistema per compiere qualunque operazione sul contenuto della variabile:

area = area*2;            /* raddoppia l’area */
segmento = segmento/k;    /* divide il segmento per k */

Il linguaggio C dispone di un operatore speciale per incrementare una variabile di una unità. Scrivere:

contakm++;

equivale a scrivere:

contakm = contakm+1;

Cioè ad incrementare di una unità il valore della variabile contakm. L'operatore ++ è l'operatore di autoincremento. L'operatore reciproco -- (due simboli meno) decrementa di una unità il valore di una variabile:

altezza--;           /* riduce l’altezza di 1 */

L'operatore -- è quindi l'operatore di autodecremento.

Si sono viste, quindi, due tecniche per aggiungere uno al valore contenuto in una variabile:

fogli = fogli+1;
fogli++;

Esiste anche una terza tecnica:

fogli += 1;

La combinazione += è un esempio di operatore di assegnazione. L'istruzione:

km += 1;

si può leggere: aggiungi uno al valore corrente della variabile km. L'operatore += non è limitato ad aggiungere 1 ma somma il valore alla sua destra alla variabile alla sua sinistra. Ad esempio:

km += 37;
k1 += k2;
a += (b/2);

equivalgono rispettivamente a:

km = km+37;
k1 = k1+k2;
a = a+(b/2);

L'operatore += non è l'unico operatore di assegnazione, si possono usare tutti gli operatori aritmetici:

km -= 6;         /* toglie 6 ai km */
lato *= 2;       /* moltiplica il lato per 2 */
volume /= 3;     /* divide il volume per 3 */
...

Nel seguito di questi appunti si converrà di utilizzare:



Avanti Indietro Inizio

http://ennebi.solira.org ennebi@solira.org