25.06.2013 Views

Il Linguaggio Fortran 90/95

Il Linguaggio Fortran 90/95

Il Linguaggio Fortran 90/95

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

32 Tipi ed espressioni<br />

2. Vengono calcolati gli elevamenti a potenza, procedendo da destra verso sinistra.<br />

3. Vengono calcolate le moltiplicazioni e le divisioni, procedendo da sinistra verso destra.<br />

4. Vengono calcolate le addizioni e le sottrazioni, procedendo da sinistra verso destra.<br />

Aritmetica intera, reale e complessa<br />

Se un operatore aritmetico opera su grandezze tutte dello stesso tipo, il risultato dell’operazione<br />

è un valore il cui tipo coincide con quello degli operandi; esso viene determinato eseguendo<br />

l’operazione in aritmetica intera, reale (singola o doppia precisione) o complessa a seconda del<br />

tipo degli operandi. Così, ad esempio, le operazioni che avvengono tra operandi tutti di tipo<br />

intero generano sempre un risultato di tipo intero. Ciò è da tenere bene a mente in presenza<br />

di operazioni di divisione. Infatti, se la divisione fra due interi non è un intero, il computer<br />

tronca automaticamente la parte decimale del risultato, come mostrato dai seguenti esempi:<br />

3/2 risultato: 1<br />

1/2 risultato: 0<br />

9/4 risultato: 2<br />

Allo stesso modo, le operazioni che avvengono tra operandi tutti di tipo reale generano sempre<br />

un risultato di tipo reale:<br />

3./2.0 risultato: 1.5<br />

1.1/2. risultato: 0.55<br />

9./4. risultato: 2.25<br />

Tuttavia, anche le operazioni tra reali hanno le loro peculiarità; infatti, dal momento che i valori<br />

memorizzati in un calcolatore hanno una precisione limitata (essendo, necessariamente, limitata<br />

l’area di memoria ad essi riservata) la rappresentazione di ciascun valore reale è limitata ad un<br />

ben preciso numero di cifre decimali (i dettagli relativi a questa approssimazione sono relativi<br />

al parametro di kind del valore reale e di questo si parlerà diffusamente nel seguito). Quindi,<br />

ad esempio, il valore del rapporto reale 1/3, espresso matematicamente da un allineamento<br />

infinito di cifre decimali (nel caso specifico, da un allineamento periodico), potrebbe avere una<br />

rappresentazione di macchina limitata a 0.3333333. Come conseguenza di questa limitazione<br />

alcune quantità che sono ”teoricamente” uguali potrebbero risultare diverse quando elaborate<br />

da un calcolatore. Ad esempio, l’espressione 3.*(1./3.), a causa di inevitabili approssimazioni<br />

nella rappresentazione dei dati, potrebbe avere un valore diverso da 1. Si parla, in questi casi,<br />

di uguaglianza approssimata, per distinguerla dalla uguaglianza esatta tipica dell’aritmetica<br />

intera.<br />

Allo stesso modo, operazioni aritmetiche tra operandi di tipo complesso danno come risultato<br />

un numero complesso. Di seguito si ricordano le definizioni matematiche delle operazioni<br />

elementari fra complessi. Con z1 e z2 si rappresentano i numeri complessi u1 + iv1 e u2 + iv2,<br />

rispettivamente:

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!