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.