REPEAT READ N$ IF FN_isanumber(N$) THEN PRINT "'" N$ "' is a number" ELSE PRINT "'" N$ "' is NOT a number" ENDIF UNTIL N$ = "end" END DATA "PI", "0123", "-0123", "12.30", "-12.30", "123!", "0" DATA "0.0", ".123", "-.123", "12E3", "12E-3", "12+3", "end" DEF FN_isanumber(A$) ON ERROR LOCAL = FALSE IF EVAL("(" + A$ + ")") <> VAL(A$) THEN = FALSE IF VAL(A$) <> 0 THEN = TRUE IF LEFT$(A$,1) = "0" THEN = TRUE = FALSE