25.06.2013 Views

Il Linguaggio Fortran 90/95

Il Linguaggio Fortran 90/95

Il Linguaggio Fortran 90/95

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

194 Operazioni di I/O interattive<br />

• Se risulta 10 i−1 ≤ |x| < 10 i , con 0 ≤ i ≤ d, allora si ottiene una rappresentazione esterna<br />

uguale a quella prodotta da un descrittore Fw.d dove d è pari a d − i e w è pari a w − k,<br />

seguita da k caratteri vuoti, dove k = 4 per il descrittore Gw.d, mentre k = e + 2 per il<br />

descrittore Gw.dEe.<br />

La seguente tabella mostra alcuni esempi di output prodotti usando il descrittore Gw.d confrontando<br />

gli stessi con quelli che si otterrebbero mediante l’utilizzo dell’equivalente descrittore<br />

F (con il carattere b si è indicato un carattere blank):<br />

Valore Formato Output con G Formato Output con F<br />

0.01234567 G13.6 b0.123457E-01 F13.6 bbbbb0.012346<br />

-0.12345678 G13.6 -0.123457bbbb F13.6 bbbb-0.123457<br />

1.23456789 G13.6 bb1.23457bbbb F13.6 bbbbb1.234568<br />

12.345678<strong>90</strong> G13.6 bb12.3457bbbb F13.6 bbbb12.345679<br />

123.45678<strong>90</strong>1 G13.6 bb123.457bbbb F13.6 bbb123.456789<br />

-1234.5678<strong>90</strong>12 G13.6 b-1234.57bbbb F13.6 b-1234.5678<strong>90</strong><br />

12345.678<strong>90</strong>123 G13.6 bb12345.7bbbb F13.6 b12345.678<strong>90</strong>1<br />

123456.78<strong>90</strong>1234 G13.6 bb123457.bbbb F13.6 123456.78<strong>90</strong>12<br />

-1234567.8<strong>90</strong>12345 G13.6 -0.123457E+07 F13.6 *************<br />

4.5 Descrittori non ripetibili<br />

4.5.1 <strong>Il</strong> descrittore nX<br />

Questo descrittore, in cuin è una costante intera positiva senza segno che non può essere omessa<br />

neanche se uguale ad uno, consente di spostarsi esattamente di n caratteri sul record corrente.<br />

L’utilizzazione del descrittore nX permette, dunque, di ignorare n caratteri su un record in<br />

ingresso o di creare un campo di n caratteri blank su un record di uscita. Normalmente, però,<br />

questo descrittore viene utilizzato nelle specificazioni di formato associate a istruzioni di uscita<br />

per spaziare opportunamente i risultati oppure per creare un blank come primo carattere del<br />

record. Ad esempio la specificazione di formato:<br />

(1X,3(A7,I3))<br />

consente di non perdere, in molti casi, il primo carattere nella stampa del record cui la specificazione<br />

di formato è riferita (il senso di quanto detto apparirà più chiaro leggendo il paragrafo<br />

relativo ai caratteri di controllo).<br />

Come ulteriore esempio, si consideri la seguente istruzione di scrittura:<br />

PRINT 111, n,x,m,y 111 FORMAT(5X,I4,5X,E13.6)<br />

in cui si suppone che le variabili n ed m siano di tipo intero mentre x ed y siano di tipo reale.<br />

L’esecuzione dell’istruzione precedente avviene nel modo seguente:<br />

• <strong>Il</strong> primo descrittore incontrato nella scansione di formato, 5X, fa in modo che le prime<br />

cinque posizioni sul record di uscita siano riempite con caratteri blank.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!