25.06.2013 Views

Il Linguaggio Fortran 90/95

Il Linguaggio Fortran 90/95

Il Linguaggio Fortran 90/95

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

4.6 Alcune considerazioni sulle istruzioni di I/O formattate 201<br />

Si noti che la presenza dello specificatore non ripetibile slash, ”/”, è giustificata dal fatto che il<br />

<strong>Fortran</strong> impone l’avanzamento di un record nel file di ingresso o di uscita ogni qualvolta viene<br />

raggiunta la fine della lista di FORMAT.<br />

Come si è avuto modo di notare, la presenza delle parentesi che raggruppano alcuni specificatori<br />

condiziona fortemente la posizione del punto di riscansione e, pertanto, può cambiare<br />

radicalmente l’interpretazione dell’istruzione FORMAT. Ad esempio, si consideri il seguente<br />

formato:<br />

(1X,2(I5),A)<br />

Poiché la riscansione comincerebbe a partire dal fattore di ripetizione 2 questa specificazione<br />

di formato è perfettamente equivalente a:<br />

(1X,I5,I5,A /<br />

I5,I5,A /<br />

I5,I5,A /<br />

...)<br />

Rimuovendo le parentesi intorno al descrittore 2I5 si otterrebbe la riga di formato:<br />

(1X,2I5,A)<br />

che, invece, è equivalente a:<br />

(1X,I5,I5,A /<br />

1X,I5,I5,A /<br />

1X,I5,I5,A /<br />

...)<br />

Pertanto l’effetto del formato (1X,2I5,A) è totalmente differente dall’effetto di (1X,2(I5),A).<br />

Allo stesso modo il significato di questa specificazione di formato:<br />

(1X,3(I2,I3),F5.0,2(1X,I3))<br />

è il seguente:<br />

(1X,I2,I3,I2,I3,F5.0,1X,I3,1X,I3 /<br />

1X,I3,1X,I3 /<br />

1X,I3,1X,I3 /<br />

...)<br />

in quanto il punto di riscansione è ancora una volta il fattore di ripetizione2ed, inoltre, soltanto<br />

il gruppo 2(1X,I3) viene ripetuto durante il processo di riscansione della frase FORMAT.<br />

Naturalmente la posizione del punto di riscansione prescinde dalla presenza o meno di un<br />

fattore di ripetizione. Così, ad esempio, la specificazione di formato:<br />

(1X,I1,(I2,I3))

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

Saved successfully!

Ooh no, something went wrong!