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