Istruzione READ nel Fortran


FORTRANL’istruzione READ nel Fortran ci consente di leggere uno o più dati dal buffer di input. L’unità nella quale andremo a leggere i dati è specificata dall’apposito numero presente nell’istruzione. Analizziamo nel dettaglio l’esempio che vi propongo:

READ(*,10) var 10 FORMAT (5X, I3)

esso indica di leggere da video (è presente l’asterisco), saltando le prime 5 colonne del buffer di input e utilizzando le seguenti 3 colonne per leggere un numero intero. Al posto dell’asterisco poteva trovarsi ad esempio il numero 1 allora si sarebbe eseguita l’operazione di lettura sull’unità 1.

Il formato dell’istruzione READ è il seguente:

READ(UNIT=u,FMT=f,ERR=e,END=d)lista di variabili

dove  u è un numero intero che assume ha la funzione di specificare l’indirizzamento della scrittura e cioè sul terminale (UNIT=6) oppure sul disco; mentre FMT=f, dove “f” è un numero intero, indica al computer di scrivere i dati con il formato specificato dall’istruzione FORMAT individuata dall’etichetta con il numero “f”;

Le specifiche ERR=e e END=d sono opzionali; in particolare la specifica ERR=e ha la funzione di far continuare l’esecuzione dalla riga etichettata con “e” se avviene un errore in lettura. Nella istruzione READ c’è anche un’ altra possibilità di errore, che capita quando, leggendo nel disco magnetico, si arriva alla fine del file di lettura; se si prova a leggere altri dati, il computer, non sapendo dove prenderli, sospenderà l’esecuzione.

Mentre la specifica END=d indica al computer di continuare l’esecuzione dalla riga etichettata con “d“. In questo modo si evita l’errore che capita quando, leggendo nel disco magnetico, si arriva alla fine del file di lettura; se si prova a leggere altri dati, il computer, non sapendo dove prenderli, sospenderà l’esecuzione.

LINK DI APPROFONDIMENTO PER L’ARGOMENTO:

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>