FAQ Fortran
- Come scrivere un programma in Fortran
- Come compilare il programma in Fortran
- Gli operatori aritmetici, logici e relazionali
- Come funziona l'enumerazione di un programma
- Come fare un salto incondizionato
- Come dichiarare le variabili
- Come assegnare valori alle variabili
- Come creare un array in Fortran
- La dichiarazione implicita delle variabili
- Come creare variabili globali nel programma
- Come creare due variabili equivalenti
- Come creare un loop DO CONTINUE
- Come creare un loop DO WHILE
Come scrivere un programma in Fortran
Un programma in Fortran è delimitato delle istruzioni PROGRAM e END. A seconda se si tratta del Fortran 77 o del Fortran 90 si seguono regole diverse.
PROGRAM nome
...
END
In Fortran77 le istruzioni devono iniziare a partire dalla colonna 7.
- Colonna 1 per indicare una linea di commento
- Colonna 2-5 per indicare un'etichetta (label)
- Colonna 6 per indicare la continuazione di una riga di codice
- Colonne 7-72 per le istruzioni del programma
Nota. Questa struttura del programma deriva dalla vecchia programmazione con le schede perforate degli anni '60-'70.
In Fortran90, invece, le istruzioni possono partire dalla prima colonna. Non ci sono altre posizioni da rispettare.
Come compilare il programma in Fortran
Uno dei compilatori più usati è il GFORTRAN. Permette di compilare sia un programma scritto in Fortran77 con estensione .f che nelle versioni successive .f90 (Fortran90) e .f95 (Fortran95).
gfortran nome.f -o nome.exe
Gli operatori aritmetici, logici e relazionali
L'elenco degli operatori matematici, logici e relazionali del linguaggio Fortran.
Come funziona l'enumerazione di un programma
L'enumerazione non è obbligatoria in un programma scritto in linguaggio Fortran. E' usata soltanto come etichetta (label) per identificare una particolare linea di codice. Non c'è un ordine logico. Pertanto, l'etichetta 20 può anche precedere l'etichetta 10.
Come fare un salto incondizionato
Per fare un salto incondizionato a una particolare linea del codice sorgente si usa l'istruzione GOTO seguito dall'etichetta numerica della linea.
Come gestire le subroutine
Il linguaggio Fortran consente l'utilizzo dei sottoprogrammi. Le subroutine hanno un nome sono delimitate dalle istruzioni SUBROUTINE e END SUBROUTINE. Per interrompere anticipatamente l'esecuzione di una subroutine si usa l'istruzione RETURN
SUBROUTINE nome
...
END SUBROUTINE
Come dichiarare le variabili
La dichiarazione delle variabili può essere esplicita o implicita. E' esplicita se il tipo di dato di un nome di variabile è definito dal programmatore. E' invece implicita negli altri casi. Di default, tutti i nomi di variabile sono reali, salvo le lettere i,j,k,l,m,n.
INTEGER a,b,c
REAL a,b,c
CHARACTER a,b
CHARACTER(10) stringa1, stringa2
E così via.
Come assegnare valori alle variabili
Per assegnare i valori alle variabili posso seguire diverse vie in Fortran. Si può usare la forma classica con il simbolo uguale (=) oppure le istruzioni DATA o PARAMETER. E' anche possibile assegnare valori tramite loop e valori ripetuti.
Come creare un array in Fortran
Il linguaggio Fortran consente l'uso delle variabili array ( vettori bidimensionali ). E' sufficiente indicare tra parentesi tonde il numero massimo degli elementi dell'array ed eventualmente, se si tratta di una stringa, il numero massimo di caratteri di ogni elemento.
La dichiarazione implicita delle variabili
Il Fortran permette la dichiarazione implicita delle variabili comprese in un intervallo di lettere. Ad esempio, si può rendere intere tutte le variabili dalla lettera A alla lettera Z che di default sarebbero reali. Con implicit none invece si può annullare qualsiasi dichiarazione implicita di default.
IMPLICIT INTEGER (a,z)
IMPLICIT NONE
Come creare variabili globali nel programma
Per definire un'area di memoria comune tra il programma e i sottoprogrammi nel Fortran 90 e versioni successive si usa l'istruzione MODULE mentre nel Fortran 77 si usava l'istruzione COMMON.
Come creare due variabili equivalenti
L'istruzione EQUIVALENCE mi consente di creare due variabili tra loro equivalenti. Quando si modifica una variabile, si modifica automaticamente anche l'altra. E viceversa. Funziona anche con i singoli elementi di un array.
Come creare un loop DO CONTINUE
L'istruzione DO / CONTINUE mi permette di realizzare una struttura ciclica con N iterazioni. Il blocco di istruzioni viene eseguito per N volte. In alternativa, posso usare anche la forma più semplificata DO / END DO.
Come creare un loop DO WHILE
L'istruzione DO WHILE crea una struttura iterativa condizionata al verificarsi o meno di un evento. In questo caso il numero di iterazioni non è predefinito. Non funziona nelle vecchie versioni del linguaggio Fortran.