PROGRAM hw
IMPLICIT NONE
INTEGER,PARAMETER::DBL=SELECTED_REAL_KIND(p=13)
REAL(KIND=DBL),ALLOCATABLE,DIMENSION(:,:)::a
REAL(KIND=DBL),ALLOCATABLE,DIMENSION(:)::b
REAL(KIND=DBL),ALLOCATABLE,DIMENSION(:)::soln
INTEGER::IO_state
CHARACTER(LEN=128)::IO_msg
INTEGER::error_flag
INTEGER::i,j,n
CHARACTER(LEN=128)::file_name
! FILE valid?
WRITE(*,*) 'Enter the file name'
DO
READ(*,*) file_name
OPEN(UNIT=1,FILE=file_name,IOSTAT=IO_state,IOMSG=IO_msg,STATUS='OLD',ACTION='READ')
IF(IO_state==0) EXIT
WRITE(*,*) IO_msg
WRITE(*,*) 'Re-enter the file name:'
END DO
READ(1,*) n
ALLOCATE(a(n,n),b(n),soln(n))
DO i=1,n
READ(1,*,IOSTAT=IO_state)(a(i,j),j=1,n), b(i)
data_valid:IF(IO_state/