FORTRAN에서 출력하기
FORTRAN에는 두가지 방식의 출력 방식이 있습니다. 첫번째는 PRINT 이고 나머지 하나는 WRITE 입니다. 간단하게 콘솔창에 출력하려면 PRINT를 쓰면 되고, 콘솔창 또는 파일로 출력하려면 WRITE를 씁니다. 먼저 PRINT 는 다음과 같이 쓰여집니다.
PRINT *, '1', 1, 1D0
PRINT *, '1', 1, 1D0
<OUT PUT>
1 1 1.00000000000000
PRINT 다음에 나오는 "*" 으로 출력 포맷을 정해 줄 수 있습니다. 문자 포맷은 'A' , 'I' 는 정수 그리고 ' F'는 실수 포멧을 정의하는 데 이용됩니다. 예를 들어 다음과 같이 사용됩니다.
1 1 1.00000000000000
PRINT 다음에 나오는 "*" 으로 출력 포맷을 정해 줄 수 있습니다. 문자 포맷은 'A' , 'I' 는 정수 그리고 ' F'는 실수 포멧을 정의하는 데 이용됩니다. 예를 들어 다음과 같이 사용됩니다.
PRINT '("TEST", A3, I3, F3.0)', '1', 1, 1D0
<OUT PUT>
TEST 1 1 1.
<OUT PUT>
TEST 1 1 1.
위 기능들은 모두 WRITE 루틴에서 지원가능하며, WRITE 를 이용하여 콘솔에 출력을 원하면, 첫번째 변수에 '*' 을 입력하여서 자동으로 콘솔에 출력합니다.
WRITE(*,*) '1', 1, 1D0
WRITE(*, '("TEST", A3, I3, F3.0)') '1', 1, 1D0
WRITE의 첫번째 변수는 출력되어지는 파일을 지정해주는 곳입니다. 정의되지 않으면 자동으로 콘솔에서 출력이 되지만, 열려있는 파일변수를 넣어주면 그 파일에 출력을 합니다. 만약에 자주 쓰는 포멧이 있다면, 포멧을 선언해 주고 쓰는 방식도 있습니다.
만약에 자주 쓰는 포멧이 있다면, 먼저 출력 포멧을 설정해 주는 방법이 보다 편리할 것입니다. 마지막으로 WRITE를 이용해서 파일을 출력파일에 출력하는 방식은 다음과 같이 출력 할 수 있습니다.
WRITE(*, 100) '1', 1, 1D0
100 FORMAT("TEST:", A3, I3, F3.0)
만약에 자주 쓰는 포멧이 있다면, 먼저 출력 포멧을 설정해 주는 방법이 보다 편리할 것입니다. 마지막으로 WRITE를 이용해서 파일을 출력파일에 출력하는 방식은 다음과 같이 출력 할 수 있습니다.
PROGRAM TEST
LOGICAL EXIST
LOGICAL EXIST
INQUIRE(FILE='TEST.TXT', EXIST=EXIST)
IF (EXIST) THEN
OPEN(0, FILE='TEST.TXT', STATUS='OLD', POSITION="APPEND", ACTION='WRITE')
ELSE
OPEN(0, FILE='TEST.TXT', STATUS='NEW', ACTION='WRITE')
END IF
WRITE(0,*) "WRITE TEXT"
IF (EXIST) THEN
OPEN(0, FILE='TEST.TXT', STATUS='OLD', POSITION="APPEND", ACTION='WRITE')
ELSE
OPEN(0, FILE='TEST.TXT', STATUS='NEW', ACTION='WRITE')
END IF
WRITE(0,*) "WRITE TEXT"
END PROGRAM
위 예제 코드에서 INQUIRE 루틴은 파일의 유무를 확인하는 작업을 수행합니다. 만약에 파일이 있다면 STATUS 에 'OLD'를 그렇지 않으면 'NEW'를 해야 합니다. 그리고 POSITION을 'APPEND'로 해주면, 해당 파일의 마지막 부분으로 출력위치를 잡아줍니다.
안녕하세요 Fortran 관련 해서 문의 드릴 사항이 있는데 혹시 연락 한번 주실 수 있으신가요?
답글삭제도움이 필요 합니다. ㅜ
010-2779-911
010-2779-9111 입니다.
삭제