Operatori aritmetici in C
Nel linguaggio C gli operatori aritmetici permettono di eseguire operazioni matematiche basilari quali l’addizione, la sottrazione, la divisione, la moltiplicazione e la divisione con modulo. Ogni tipo di operazione è associata ad un particolare simbolo; nella seguente tabella vengono riportati i principali operatori aritmetici:
Operatore | Simbolo | Esempio |
---|---|---|
Addizione | + | 5 + 2 = 7 |
Sottrazione | - | 32 - 17 = 15 |
Moltiplicazione | * | 2 * 18 = 36 |
Divisione intera | / | 16 / 5 = 3 |
Divisione con modulo | % | 16 % 5 = 1 |
Le ultime due righe della tabella contengono degli operatori particolari, infatti nel caso di utilizzo con valori interi, la divisione intera restituisce il numero di volte che il dividendo è divisibile per il divisore, ma senza il resto. Mentre nel caso di divisione con modulo (sempre con numeri interi) viene restituito il resto della divisione.
Queste regole valgono solo nel caso in cui gli operatori vengono usati con numeri interi, infatti con i numeri reali l’operatore di divisione con modulo non esiste in quanto le divisioni contengono anche le parti frazionarie. Di conseguenza, l’esempio della divisione diventerebbe: 16.0 / 5.0 = 3.2.
Nota: bisogna fare molta attenzione quando si fa uso dell’operazione di divisione, in quanto la divisione tra un numero intero ed un numero reale restituisce un valore reale. Ad esempio, date le seguenti variabili int a=3 e float b=5, il loro rapporto (a/b) non è 0, bensì 0.6. Chiaramente è comunque possibile ottenere un valore intero effettuando l’operazione di casting.
Esempio operatori aritmetici in C
Nel seguente esempio sono stati riportate alcune operazioni aritmetiche sia con numeri interi che con numeri reali in modo da visualizzare meglio il loro comportamento.
#include <stdio.h>
int main(){
int a = 5;
int b = 3;
int c = 12;
float d = 3;
float e = 1.5;
int somma_interi = a + b + c;
int sottr_interi = a - b;
int molt_interi = b * c;
int div_interi = c / b;
float somma = a + b + c;
float sottr = a - e;
float molt = b * e * d;
float divisione = a / e;
printf("Somma di interi: %d\n", somma_interi);
printf("Sottrazione tra interi: %d\n", sottr_interi);
printf("Moltiplicazione tra interi: %d\n", molt_interi);
printf("Divisione tra interi: %d\n\n", div_interi);
printf("Somma: %f\n", somma);
printf("Sottrazione: %f\n", sottr);
printf("Moltiplicazione: %f\n", molt);
printf("Divisione: %f\n", divisione);
return 0;
}
/*
— OUTPUT —
Somma di interi: 20
Sottrazione tra interi: 2
Moltiplicazione tra interi: 36
Divisione tra interi: 4
Somma: 20.000000
Sottrazione: 3.500000
Moltiplicazione: 13.500000
Divisione: 3.333333
*/
Indice pagine di c
Indice cPagine aggiunte di recente
Indice pagine del linguaggio C: Funzioni, Stringhe, ArrayCome effettuare la radice quadrata con la funzione sqrt in CCome ottenere il valore assoluto con la funzione abs in CCome generare numeri casuali con la funzione rand in CCome generare numeri casuali tra due numeri in C