La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Espressioni aritmetiche e cast dei dati numerici Anno Accademico 2009/2010.

Presentazioni simili


Presentazione sul tema: "1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Espressioni aritmetiche e cast dei dati numerici Anno Accademico 2009/2010."— Transcript della presentazione:

1 1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Espressioni aritmetiche e cast dei dati numerici Anno Accademico 2009/2010

2 2 Espressioni aritmetiche Unespressione aritmetica è una combinazione di operandi che sono numeri (interi o decimali), di operatori aritmetici e di parentesi tonde. La tabella nella slide successiva riporta gli operatori aritmetici per: 1.somma (operatore binario) 2.sottrazione (operatore binario) 3.moltiplicazione (operatore binario) 4.divisione (operatore binario) 5.modulo (operatore binario) 6.negazione aritmetica (operatore unario)

3 3 Operazione Simbolo Java UsoSignificato Somma+op1+op2 Somma il valore di op1 a quello di op2 Sottrazione-op1-op2 Sottrae il valore di op2 a quello di op1 Moltiplicazione*op1*op2 Moltiplica il valore di op1 con quello di op2 Divisione/op1/op2 Divide il valore di op1 con quello di op2 Modulo%op1%op2 Calcola il resto della divisione intera tra op1 e op2, dove op1 e op2 sono operandi interi Negazione aritmetica --op1 Trasforma il valore di op1 nel corrispondente di segno opposto Operatori aritmetici NB: op1 e op2 sono due generici operandi numerici (interi o decimali)

4 4 Operatori aritmetici Ad esempio il seguente codice: int x, y, z; x=3; y=10; z=y%x; System.out.println(z); z=-x; System.out.println(z); stampa: 1 -3

5 5 Precedenze tra operatori aritmetici Più operatori aritmetici possono essere combinati in espressioni aritmetiche complesse. Essi hanno una precedenza che determina lordine in cui vengono valutati (cioè eseguiti). Gli operatori con la stessa precedenza vengono valutati procedendo da sinistra a destra dellespressione. Lordine di precedenza può essere modificato utilizzando le parentesi tonde.

6 6 Elenco degli operatori aritmetici (appena visti) in ordine di precedenza decrescente: 1.negazione aritmetica - 2.moltiplicazione *, divisione /, modulo % 3.somma +, sottrazione – Precedenze tra operatori aritmetici

7 7 Gli operatori aritmetici di moltiplicazione, divisione e modulo hanno quindi la precedenza sugli operatori aritmetici di somma e sottrazione; loperatore di negazione aritmetica ha la precedenza su tutti. Nei due esempi seguenti: a+b+c+d prima viene valutata a+b, poi si aggiunge ad a+b il valore di c e poi si aggiunge ad a+b+c il valore di d a+b*c+d%e/f prima viene valutata b*c, poi d%e, e il risultato di d%e viene diviso per f. In seguito viene sommato il contenuto di a al risultato di b*c. Infine al risultato di a+b*c viene aggiunto il risultato di d%e/f.

8 8 Il cast dei dati Si è in precedenza detto che il valore da assegnare ad una variabile deve essere dello stesso tipo primitivo usato nella sua dichiarazione. Cosa succede invece se si tenta di assegnare ad una variabile, di un determinato tipo primitivo, un valore di tipo diverso? Avviene una conversione di tipo, cioè avviene il cosiddetto cast. Considerando i soli tipi primitivi numerici ( byte, short, int, long, float, double ) si può avere un cast: implicito se avviene automaticamente senza forzatura da parte del programmatore, in quanto la conversione non comporta perdita di informazione esplicito se avviene ad opera del programmatore che forza la conversione anche a costo di una perdita di informazione

9 9 Il cast dei dati Il cast implicito avviene automaticamente quando ad una variabile di tipo più alto viene assegnato un valore di tipo più basso. Ad esempio: float f; int x=10; f=x; I tipi primitivi numerici possono essere ordinati dal più basso al più alto nel modo seguente: byte short int long float double Il valore di x (10) viene automaticamente convertito in floating point 10.0 e quindi assegnato alla variabile f

10 10 Il cast dei dati Il cast esplicito è richiesto quando si vuole assegnare a una variabile di tipo più basso un valore di tipo più alto. Basta specificare tra parentesi tonde, davanti al valore, il tipo primitivo della variabile a cui assegnare tale valore. Ad esempio: int x; double d=3.6; x=(int)d; Il valore di d (3.6) viene a forza convertito in intero 3 e quindi assegnato alla variabile x I tipi primitivi numerici possono essere ordinati dal più basso al più alto nel modo seguente: byte short int long float double


Scaricare ppt "1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Espressioni aritmetiche e cast dei dati numerici Anno Accademico 2009/2010."

Presentazioni simili


Annunci Google