Istruzione WRITE nel Fortran


FORTRANL’istruzione WRITE nel Fortran permette di scrivere il contenuto di una variabile secondo un preventivato formato. La sintassi dell’istruzione WRITE è la seguente:

 WRITE(UNIT=u,FMT=f,ERR=e) 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;
  • 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”;
  • la specifica (ERR=e) è opzionale e serve per controllare che il processo di scrittura abbia avuto successo.

Le parole chiave “UNIT=” e “FMT=” possono essere omesse, quindi possiamo sintetizzare il comando in  WRITE(u,f,…), assicurandoci però che il numero che si riferisce all’unità di uscita preceda l’etichetta del formato. Se “f” viene posto uguale ad un “*” (asterisco), specificheremo di utilizzare un formato “libero”, cioè quello predefinito nel FORTRAN (in questo caso, i valori delle variabili verranno stampati in una sola riga, con 7 decimali se sono variabili R4, 15 se sono R8, ecc.).

 Se la specifica ERR non è presente e si verifica una condizione di errore  il computer fermerà l’esecuzione. Se invece si è specificato ERR=e, dove “e” è un altro numero di etichetta, quando si verifica una condizione di errore durante la scrittura il computer continuerà l’esecuzione del programma dalla riga etichettata con “e”.

Un esempio dell’utilizzo dell’istruzione WRITE nel Fortran è il seguente:

WRITE (*,10) j,var 10 FORMAT (“L’iterazione”,I3,”ha fornito il seguente risultato”,F7.3)

La parentesi (*,10) indica di scrivere a video (*) con formato 10 (10 è l’etichetta del formato), è importante che tale etichetta non sia stata già utilizzata. Il formato scelto prevede del testo per indicare il significato dei valori e dei descrittori di formato che indicano in che modo devono essere espressi i valori delle variabili.

LINK DI APPROFONDIMENTO PER L’ARGOMENTO:

Leave a Reply

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