VARIABILI E COSTANTI INTEGER
INTEGER :: var1
INTEGER, PARAMETER :: cost1
valide
non valide
var1=10
var1=10.
cost1=+5
cost1=+5.0E1
var1=-7
var1=7,00
VARIABILI E COSTANTI REAL
REAL :: var
REAL, PARAMETER :: cost
valide
non valide
var=10.
var=10,00
cost=-7.5
cost=5.0E1.5
var=2.E-1 (=0.2)
var=7E+1
cost=3.E3 (=3000)
var=6.E+2 (=600)
VAR. E COST. DOUBLE PRECISION
DOUBLE PRECISION :: var
DOUBLE PRECISION, PARAMETER :: cost
valide
non valide
var=10.D0
var=10
cost=-7.5D0
cost=5.0
var=2.D-1 (=0.2)
var=7E+1
cost=3.D3 (=3000)
var=6.D+2 (=600)
Operatori
Addizione
+
v3=v2+v1
Sottrazione
-
v3=v2-v1
Moltiplicazione
*
v3=v2*v1
Divisione
/
v3=v2/v1
Elevam. a potenza
**
v3=v2**v1
Operatori
errate
esatte
var=a*-b
var=a*(-b)
var=a**-b
var=a**(-b)
var=a(c-b)
var=a*(c-b)
N.B. usare le parentesi per raggruppare
var=2**((7+3)/5)
Operazioni con i numeri interi
Le operazioni con i numeri interi generano sempre
un numero intero
Se la divisione di due interi non è un intero la parte
decimale del risultato è troncata automaticamente
var = 3/4 = 0
var = 4/4=1
var = 5/4=1
var = 6/4 = 1
var = 8/4=2
var = 9/4=2
Gerarchia delle operazioni
Le operazioni sono calcolate con il seguente ordine
1) le operazioni all’interno delle parentesi, dalle
parentesi più interne a quelle più esterne
2) gli elevamenti di potenza, da destra verso sinistra
3) le moltiplicazioni e divisioni, da sinistra verso destra
4) le addizioni e sottrazioni, da sinistra verso destra
Gerarchia delle operazioni
var = 3.*2.+5.*4.+10./2.**3
var = 3.*2.+5.*4.+10./8.
var = 6.+5.*4.+10./8.
var = 6.+20.+10./8.
var = 6.+20.+1.25
var = 27.25
Gerarchia delle operazioni
var = 3.*(2.+5.)*4.+(10./2.)**3
var = 3.*7.*4.+5**3
var = 3.*7.*4.+125.
var = 21.*4.+125.
var = 84.+125.
var = 209.
Gerarchia delle operazioni
var = 3.*(2.+5.)*(4.+10.)/2.**3
var = 3.*7.*14./2.**3
var = 3.*7.*14./8.
var = 21.*14./8.
var = 294./8.
var = 36.75
Gerarchia delle operazioni
var = 3.**2.**3.
var = 3.**8.
var = 6561.
Utilizzare le parentesi per semplificare la lettura
Operazioni miste
1) un operazione tra un numero intero e un numero
reale viene detta operazione mista
2) il numero intero viene convertito in un numero reale
e il risultato dell’operazione è un numero reale
3) la conversione automantica avviene solamenete se
il numero intero e il numero reale figurano nella
stessa operazione
Operazioni miste
var = 3/2 = 1
var = 3./2. = 1.5
var = 3./2 = 1.5
var = 1 + 1/4 = 1
var = 1. + 1/4 = 1.
var = 1 + 1./4 = 1.25
var = 1. + 1./4. = 1.25
Operazioni miste
INTEGER :: var
var = 1.5 + 9 / 4 = 1.5 + 2 = 3.5
poichè var può contenere solamente numeri interi
il valore risultante viene automaticamente
trasformato nel numero intero 3
in pratica si ha:
var=3
Funzioni di conversione
funzione argomento risultato
descrizione
INT(x)
reale
intero
parte intera di x
NINT(x)
reale
intero
intero più vicino a x
REAL(i)
intero
reale
converte un intero
in un reale
DBLE(i)
intero
doppia
converte un intero
precisione
in un doppia prec.
Funzioni intriseche
funzione argomento risultato
SQRT(x)
reale
DSQRT(x)
descrizione
reale
radice quadrata di x
d.prec.
d.prec.
radice quadrata di x
ABS(x)
reale
reale
valore assoluto di x
DABS(x)
d.prec.
d.prec.
valore assoluto di x
Funzioni intriseche
funzione argomento risultato
descrizione
SIN(x)
reale
reale
seno di x (x in radianti)
DSIN(x)
d.prec.
d.prec.
seno di x (x in radianti)
COS(x)
reale
reale
coseno di x (x in rad.)
DCOS(x) d.prec.
d.prec.
coseno di x (x in rad.)
TAN(x)
reale
tangente di x (x in rad.)
d.prec.
tangente di x (x in rad.)
reale
DTAN(x) d.prec.
Funzioni intriseche
funzione argomento risultato
ASIN(x)
reale
DASIN(x) d.prec.
ACOS(x)
reale
descrizione
reale (rad.) arcseno di x (-1<x<1)
d.prec.(rad.) arcseno di x (-1<x<1)
reale(rad.)
arccos. di x (-1<x<1)
DACOS(x) d.prec. d.prec.(rad.) arccos. di x (-1<x<1)
ATAN(x)
reale
reale(rad.)
arctangente di x
DATAN(x) d.prec. d.prec.(rad.) arctangente di x
Funzioni intriseche
funzione argomento risultato
descrizione
EXP(x)
reale
e elevato a x
DEXP(x)
d.prec.
d.prec.
LOG(x)
reale
reale
log. naturale di x (x>0)
DLOG(x)
d.prec.
d.prec.
log. naturale di x (x>0)
LOG10(x)
reale
reale
log. base 10 di x (x>0)
d.prec.
log. base 10 di x (x>0)
DLOG10(x) d.prec.
reale
e elevato a x
Funzioni intriseche
funzione
argomento
risultato
descrizione
MOD(y,x)
reale/int.
reale/int.
resto di y/x
DMOD(y,x)
d.prec.
d.prec.
resto di y/x
MAX(y,x)
reale/int.
reale/int.
il max. tra y e x
DMAX(y,x)
d.prec.
d.prec.
il max. tra y e x
reale/int.
il min. tra y e x
d.prec.
il min. tra y e x
MIN(y,x)
DMIN(y,x)
reale/int.
d.prec.
Scarica

Fortran90-II