Quale versione del fortran utilizzi?
A cura di Giuseppe Ciaburro
Pubblicato il 20/04/2001
Una breve panoramica sulle operazioni di ingreeso uscita in fortran 77.
Le Istruzioni READ,WRITE e PRINT
Nelle istruzioni di ingresso e uscita (READ,WRITE,PRINT) occorre specificare il codice della periferica addetta alle operazioni , il formato dei dati e i nomi delle variabili in cui i dati debbono essere memorizzati (READ) o da cui debbono essere prelevati (WRITE o PRINT). La descrizione del formato dei dati è contenuta in una particolare istruzione etichettata detta istruzione FORMAT e che verrà descritta nel paragrafo seguente. La sintassi delle istruzioni READ e WRITE è la seguente:
Istruzione-ingresso = "READ" "(" numero-unità"," etichetta-istruzione-FORMAT ")" lista-variabili.
Istruzione-uscita = "WRITE" "(" numero-unità "," etichetta-istruzione-FORMAT ")" lista-di-uscita.
Esempio:
INTEGER giorno,mese,anno
READ(2,200) giorno,mese
WRITE(4,310) anno
200 FORMAT (2I2)
310 FORMAT (I4)
La prima istruzione legge dal canale 2 secondo un formato descritto nell'istruzione FORMAT con etichetta 200 e trasferisce il primo valore letto nella variabile giorno e il secondo nella variabile mese. E' prevista la lettura di due interi di due cifre. La seconda istruzione stampa il valore della variabile anno sulla stampante 6 secondo il formato descritto nell'istruzione FORMAT con etichetta 310. E' prevista la stampa di un intero di quattro cifre. Analogamente a quanto avviene per il PASCAL le operazioni di ingresso e uscita leggono e scrivono i dati su canali associati alle periferiche di ingresso e uscita. La specifica dell'unità e/o del formato può essere omessa sostituendo tale specifica con il simbolo *. Ad esempio:
READ(*,*) giorno,mese
WRITE(*,*) anno
In questo caso come unità di ingresso viene assunta la tastiera, come unità di uscita il video e il formato viene desunto dalle dichiarazioni delle variabili. Ogni istruzione di READ e WRITE con formato standard corrisponde alla lettura o scrittura di una linea.
Alcuni compilatori ammettono anche l'istruzione di uscita PRINT per compatibilità con precedenti versioni del linguaggio. La forma dell'istruzione PRINT è:
PRINT*, lista -di-uscita