Questo è una parte di codice che ho scritto, ma il file sembra continuarmi a dare problemi: READ(U(K)...,IOSTAT=IOS) mi segnala ios=-1 prima, ios=22 poi, ma non capisco. Cosa sbaglio? GRAZIEMILLE!!

codice:
PROGRAM CONVERT
IMPLICIT NONE

LOGICAL F(2)
INTEGER U(2),K,I,J,IOS
REAL SOM,CALC,EFFMED(17),DEVST(17),DIFPERC(17),B(17),
+Vin(100),Iin(100),Vload(100),Iload(100),EFFIC(100 )
CHARACTER*13 CONFIG(2),FILENEW*12
DATA CONFIG/'ortogonal.dat','parallela.dat'/,
+FILENEW/'tabella.dat'/

OPEN (13,FILE=FILENEW,STATUS='NEW',ERR=1002)
WRITE (13,201,ERR=1004)

K=0
DO 50,K=1,2
INQUIRE (FILE=CONFIG(K),EXIST=F(K))
IF (F(1).OR.F(2)) THEN
U(1)=11
U(2)=12
END IF
OPEN (U(K),FILE=CONFIG(K),ACCESS='SEQUENTIAL',
+ FORM='UNFORMATTED',STATUS='OLD',ERR=1001)

SOM=0.0
CALC=0.0
DO 51,I=1,17
DO 52,J=1,100
READ (U(K),ERR=1003,IOSTAT=IOS) B(I),Vin(J),
+ Iin(J),Vload(J),Iload(J)

calcoli vari

52 CONTINUE

WRITE (13,202,ERR=1004) CONFIG(K),B(I)

51 CONTINUE

CLOSE (U(K))
F(K)=.FALSE.

50 CONTINUE

STOP
altro
END