Fortran - Variabili
Una variabile non è altro che un nome dato a un'area di memoria che i nostri programmi possono manipolare. Ogni variabile dovrebbe avere un tipo specifico, che determina la dimensione e il layout della memoria della variabile; l'intervallo di valori che possono essere memorizzati all'interno di quella memoria; e l'insieme di operazioni che possono essere applicate alla variabile.
Il nome di una variabile può essere composto da lettere, cifre e il carattere di sottolineatura. Un nome in Fortran deve seguire le seguenti regole:
Non può essere più lungo di 31 caratteri.
Deve essere composto da caratteri alfanumerici (tutte le lettere dell'alfabeto e le cifre da 0 a 9) e trattini bassi (_).
Il primo carattere di un nome deve essere una lettera.
I nomi non fanno distinzione tra maiuscole e minuscole.
In base ai tipi di base spiegati nel capitolo precedente, di seguito sono riportati i tipi di variabili:
Suor n | Tipo e descrizione |
---|---|
1 | Integer Può contenere solo valori interi. |
2 | Real Memorizza i numeri in virgola mobile. |
3 | Complex Viene utilizzato per memorizzare numeri complessi. |
4 | Logical Memorizza i valori booleani logici. |
5 | Character Memorizza caratteri o stringhe. |
Dichiarazione di variabili
Le variabili vengono dichiarate all'inizio di un programma (o sottoprogramma) in un'istruzione di dichiarazione del tipo.
La sintassi per la dichiarazione delle variabili è la seguente:
type-specifier :: variable_name
Per esempio
integer :: total
real :: average
complex :: cx
logical :: done
character(len = 80) :: message ! a string of 80 characters
Successivamente puoi assegnare valori a queste variabili, come,
total = 20000
average = 1666.67
done = .true.
message = “A big Hello from Tutorials Point”
cx = (3.0, 5.0) ! cx = 3.0 + 5.0i
Puoi anche usare la funzione intrinseca cmplx, per assegnare valori a una variabile complessa -
cx = cmplx (1.0/2.0, -7.0) ! cx = 0.5 – 7.0i
cx = cmplx (x, y) ! cx = x + yi
Esempio
L'esempio seguente mostra la dichiarazione, l'assegnazione e la visualizzazione delle variabili sullo schermo:
program variableTesting
implicit none
! declaring variables
integer :: total
real :: average
complex :: cx
logical :: done
character(len=80) :: message ! a string of 80 characters
!assigning values
total = 20000
average = 1666.67
done = .true.
message = "A big Hello from Tutorials Point"
cx = (3.0, 5.0) ! cx = 3.0 + 5.0i
Print *, total
Print *, average
Print *, cx
Print *, done
Print *, message
end program variableTesting
Quando il codice precedente viene compilato ed eseguito, produce il seguente risultato:
20000
1666.67004
(3.00000000, 5.00000000 )
T
A big Hello from Tutorials Point