Odczyt liczby całkowitej z pliku kończy się `` Brakującym formatem dla transferu danych FORMATTED wykonanym``
Aktualizuję program Fortran dla moich potrzeb. Program kompiluje za pomocąf95
igcc
wersja 4.1.2 (wiem, że jest stara, ale nie mogę jej zaktualizować). Chcę odczytać parametry z pliku i wypróbować to przez
inquire (file="resLast", exist=resExist)
if (readStart.eq.1.and.resExist) then
open (unit=18,file='resLast', status='old', action='read')
read (18) startConf
read (18) avlength, stdlength, avenergy
read (18) i,h2(1)
read (18) i,h2(2)
read (18) i,h2(4)
read (18) i,h2(5)
read (18) i,h2(8)
read (18) i,h2(9)
read (18) i,h2(13)
read (18) i,h2(16)
read (18) i,h2(17)
read (18) i,h2(18)
read (18) i,h2(20)
read (18) i,h2(25)
read (18) i,h2(32)
close (18)
else
startConf = 0
do i=1,32
h2(i)=0
comh2(i)=0
enddo
avlength=0d0
stdlength=0d0
avenergy=0d0
endif
Plik wejściowy wygląda tak
0
196.090732114834 38451.5752213317 53.4452884569457
1 9.188750409521163E-004
2 4.548226133920252E-004
4 8.704101492185146E-005
5 2.175445697503164E-004
8 4.992044341634028E-005
9 2.108949411194772E-005
13 4.304789035813883E-005
16 4.693072696682066E-005
17 8.976260141935199E-005
18 2.737747854553163E-005
20 5.637826689053327E-005
25 3.860405195155181E-005
32 3.193027441739105E-005
Gdy próbuję to uruchomić, pojawia się błąd
Fortran runtime error: Missing format for FORMATTED data transfer
done
Co wskazuje na pierwszyread
linia. ThestartConf variable, as well as
i`` jest liczbą całkowitą. Pozostałe zmienne są podwójnej precyzji.
Użyłem tej metody, aby wczytać dane do liczb całkowitych wcześniej (nawet w tym samym kodzie) bez problemu, gdzie jest moja obecna usterka?