입력  READ ( io unit , format ) input list
출력  WRITE ( io unit , format ) output list

READ 와 WRITE 는 제어부와 입출력리스트로 구성된다.


input list 와 output list 는 comma(,) 에 의해 구분된다.

READ 에서,  실제 입력데이터는 콤마, 빈칸, 줄에 의해 구분된다.

입력값은 각 데이터형 상수 방식으로 입력한다.

가령 복소수를 입력할때는 ( a,b ) 꼴로 입력을 한다.
괄호없이 그냥 수로 입력하면, 실수로 처리되어 실수로 입력되고, 허수부는 0 이 된다.
이는 복소수 자료형이 실수형을 포함하는 데이터 타입이기 때문에 그렇다.

논리형이라면 .TRUE. 와 .FALSE. 로 입력하면 되는데, 이것이 상당히 번거로우므로, 간단히 T 와 F 로 입력할 수 있다.

그런데, READ 는 기본적으로 한줄로 부터 입력을 받는다.
한줄에 받기로한 데이터보다 더 많은 데이터가 입력될 경우, 버리기 때문에, 줄로 구분해서 데이터를 입력시 유의해야한다.
단, 입력이 부족할때는 다음줄로 부터 받을수 있다.



제어부

( ) 는 제어부로, 첫번째 부분은 입출력 유닛에 대한 부분이고, 두번째 부분은 입출력 포맷에 관한 부분이다.

 io unit 는 어디서 데이터를 읽어올 것인가를 나타낸다.
* 는 스탠다드 인풋 디바이스 를 나타내며, 보통 키보드 입력을 뜻한다.

format 은 입출력 형식에 관한 것이다.
* 는 list-directed (free format) 으로, input list 의 변수자료형이 입력받을 자료의 포맷을 결정한다는 의미이다.

io unit 과 format 에 대해서는 나중에 자세히 다루도록 한다.