C SAMPLE PROGRAM FOR SGEFS
C
      PARAMETER (LDA=10)
      REAL      A(LDA,LDA), B(LDA), WORK(LDA), RCOND
      INTEGER   IWORK(LDA), I, J, N, ITASK, IND
C
C SET UP PROBLEM
C
      N      =  3
      ITASK  =  1
      A(1,1) = 10.0
      A(2,1) = -3.0
      A(3,1) =  5.0
      A(1,2) = -7.0
      A(2,2) =  2.0
      A(3,2) = -1.0
      A(1,3) =  0.0
      A(2,3) =  6.0
      A(3,3) =  5.0
      B(1)   =  7.0
      B(2)   =  4.0
      B(3)   =  6.0
C
C PRINT PROBLEM INFORMATION
C
      WRITE (*,*) ' COEFFICIENT MATRIX ='
      DO 10 I = 1,N
         WRITE (*,800) (A(I,J), J = 1,N)
10    CONTINUE
      WRITE (*,*) ' RIGHT-HAND SIDE ='
      WRITE (*,800) (B(J), J = 1,N)
C
C SOLVE LINEAR SYSTEM
C
      CALL SGEFS (A, LDA, N, B, ITASK, IND, WORK, IWORK, RCOND)
C
C PRINT RESULTS
C
      WRITE (*,*)
      WRITE (*,*) 'SGEFS RESULTS'
      IF (IND .EQ. -10) THEN
         WRITE (*,*) ' ERROR CODE =', IND
      ELSE IF (IND .LT.0) THEN
         WRITE (*,*) ' ERROR CODE =', IND
         STOP
      ELSE
         WRITE (*,*) ' NUMBER OF ACCURATE DIGITS =', IND
      END IF
C
      WRITE (*,*) ' SOLUTION ='
      WRITE (*,800) (B(J), J = 1,N)
C
      WRITE (*,*)
      WRITE (*,*) 'REFERENCE RESULTS FROM IBM PC/AT '
      WRITE (*,*) ' NUMBER OF ACCURATE DIGITS =           5'
      WRITE (*,*) ' SOLUTION ='
      WRITE (*,*) '       0.000000   -1.000000    1.000000'
C
      STOP
800   FORMAT (4X, 3F12.6)
      END
