Fortran: tipi primitivi

I tipi primitivi sono:  logicalcharacter (per stringhe alfanumeriche) e  i tre tipi numerici,   integerreal,  complex.

Esempi di dichiarazione di variabili,  di costanti letterali,  di input per la lettura di variabili mediante istruzione "read*,...", nonche' operazioni predefinite  sono riassunti nella seguente tabella:

Dichiarazione    variabile/i        
Costanti
Lettura     (read*, variabile)
Operazioni




logical   ::    var_log
.true.    .false.
.t.  t  .f. f .true. true .false. false
.not. 
.and. 
.or.
.eqv.
.neqv.
character(len=N) :: var_char
"abcd"  'abcd'
'l''apostrofo'
"abc" 'abc'   abc (solo le prime 2 se appaiono spazi nella stringa; con l'  ultima forma tutti gli spazi iniziali sono ignorati)
concatenazione:  var_char // "stringa"
sottostringhe:   var_char(2:6)
 var_char(:7)    var_char(3:)
integer   ::    var_int
3    -45
3    -45
+ - * /  **  ==     /=      >=    >    <=    <
(attenzione alla divisione:
da'  il quoziente della divisione tra interi)

REAL(i)  trasforma una
variabile intera i in numero reale
real        ::    var_real
3.2   6.022e23
6.022E23
1.054e-27
1.054E-27
3.2   6.022e23   1.054e-27  1.054E-27
3  -43
+ - * /  **
==     /=      >=    >    <=    <

INT(r) trasforma una variabile real r  in intero (troncando)

NINT(r) trasforma una variabile
real r in intero (approssimando all' intero piu'  vicino)

complex ::    var_cmplx

(1.0, 23.0)
(2.1e3,1.1e-1)

(1.0, 23.0)
(2.1e3,1.1e-1)
+ - * /  **
==     /= 
CMPLX( 1.2, 3.1)
REAL(z)
IMAG(z)
N.B. (1.2,3.1) è una costante letterale complessa. il cui valore può essere ottenuto anche attraverso la function CMPLX(1.2,3.1). Non è possibile ottenere una variabile complessa a partire da due variabili reali rz e iz attraverso una scrittura come (rz,iz). Occorre sempre usare la function: CMPLX(rz,iz).
ATTENZIONE: a differenza della maggioranza delle function intrinseche, CMPLX non ritorna un valore dello stesso tipo e kind dell' argomento ma ritorna un complex con il kind di default. Eventualmente utilizzare il terzo argomento (kind) opzionale.