Прежде чем я начну, я должен предисловие, заявив, что я новичок, когда дело касается Фортран. Я сохраняю унаследованный кусок кода с 1978 года. Цель состоит в том, чтобы читать некоторые данные из файла, обрабатывать значения, а затем выводить обработанные значения в другой текстовый файл.FORTRAN WRITE()
Учитывая следующий FORTRAN код:
INTEGER NM,STUBS,I,J,K
PARAMETER (NM=67,STUBS=43)
INTEGER*4 MDS(STUBS,NM)
CALL OPEN$A(A$RDWR,'/home/test/data.txt', MAXPATHLEN,1)
CALL OPEN$A(A$WRIT,'out',11,2)
DO 90 I=1,2
READ(1,82) STUB
!-- data processing --!
WRITE(2,80) STUB,(MDS(I,J),J=1,24)
90 CONTINUE
80 FORMAT(/1X,A24,25I5)
82 FORMAT(1X,A24,25F5,1)
Мой вопрос в отношении к WRITE()
заявления.
Я понимаю, что (2,80)
относится к выходному файл потока открыт и указывающий на файл 'out'
и ссылается цифрой 2. Я понимаю, что 80 ссылается на заявление формата, на который ссылается этикетке 80.
STUB
используется для хранить значения, считанные из ввода файла 1. Эти значения являются тем, что обрабатывается, и сохраняются в MDS(I,J)
в разделе !-- data processing --!
, который я пропустил.
Правильно ли я полагаю, что (MDS(I,J),J=1,24)
будет записывать 24 целочисленных значения в выходной файл? Другими словами, цикл от 1 до 24?
@Fortranner При добавлении тегов вы должны очистить форматирование или другие проблемы в вопросе. –