CKXNUM CKXNUM CKXNUM CKXNUM CKXNUM CKXNUM CKXNUM ********************************************** ************************** ****** SUBROUTINE CKXNUM (LINE, NEXP, LOUT, NVAL, RVAL, KERR) Searches a character string, LINE, for NEXP space-delimited substrings representing numbers, until NVAL real values are converted and stored in the array, RVAL. This allows format-free input of numerical data. For example: input: LINE = " 0.170E+14 0 47780.0" NEXP = 3, the number of values requested LOUT = 6, a logical unit number on which to write diagnostic messages. output: NVAL = 3, the number of values found RVAL(*) = 1.700E+13, 0.000E+00, 4.778E+04 KERR = .FALSE. INPUT LINE - Character string, length established by calling program. NEXP - Integer scalar, number of real values to be found in LINE; If NEXP < 0 then IABS(NEXP) values are expected, but it is not an error condition if fewer values are found. LOUT - Integer scalar, output unit for printed diagnostics. OUTPUT NVAL - Integer scalar, count of real values found in LINE. RVAL - Real array, values converted from characters in LINE; dimension at least NEXP. KERR - Logical, syntax or dimensioning error flag.